Did not read the full thing but see my answer here (the second part mostly) for transforming asset references (from AssetRegistry search results) into usable classes, this can be done in BP.
C++ can work too and should be similar.
Either way, you should avoid loading the Blueprint
type objects as they are editor-only content, stripped out when packaging the project. So loading the Blueprint to access its GeneratedClass will not work in packaged. As mentioned in my answer above you can load directly the generated class using the _C
postfix.