So… I gave up. Well, gave up trying to figure this out myself anyway.
I hired someone on Fiverr who got this working in a couple of days.
They gave me permission to share the solution with the UE community.
It is now available on myGithub page as an UE Plugin:
Edited to give credit to Fiverr seller:
Their username is cynorthwyydd. If you need any help fixing your C++ UE issues I would very much recommend.