In fact the "external" PRXs are loaded, relocated
and ran correctly by HBL. They're the same as PRXs that homebrews are made of, and are loaded the same way these are (and in fact they do). The problem I found when coding and testing this is that because of some reason, the data section of the PRX is loaded with strange values, and the creation of the main thread (created automatically by PSPSDK) fails because of the values used. This means the PRX is loaded, relocated and running. I didn't dig too much on it but I think if someone's able to find why this corruption happens (dang stack most likely), the PRXs should run fine (still with the HBL user-mode-only restrictions of course).
Maybe a
memory allocation system done by HBL instead of relying on the PSP kernel would solve this (I think wololo asked what this would solve somewhere on this forum...).
About the HBL informing about it, it does on the debug log. That's far enough.