Btw. I have two clients for which I created an Mx app that they added to their website using iframe. Pitfall one: bad on Google-ranking, but not everybody cares about that/needs that. Pitfall 2: double usermanagement.
When I saw your post I was hoping for a robust discussion here. We are looking for a similar solution. It should be possible for Mendix to facilitate this. We need some forward thinking here. The needed solution is the antidote to the dreaded monolith application.
Patching mxclientsystem sounds like a terrible idea. I would advice to identify what API’s you need and build them as REST. It is extra work but it’s the right architecture:
Alternatively, you can try calling the mxclient API’s (https://apidocs.rnd.mendix.com/9/client/mx.data.html) directly from your SPA. These were designed for use by custom widgets. So your use-case is probably not supported by Mendix.