Rearchitecting sometimes helps
It sounds like making a database system that can handle all the data you decided to record even though I didn't give you permission to have it works a lot better than tying a bunch of disconnected systems together with APIs that don't know about the system as a whole. Imagine that.
I'm dealing with a similar set of codebases at the moment, and it's as if people don't understand that building something with no design for expansion then patching each new feature on in the way that takes the least amount of time has any downsides. They don't seem to think that there's anything bad about the fact that there are three systems for doing the same thing, all of which work in different ways, have different interfaces, and are missing a few features that another one has. In fact, one suggestion that was recently made was to build a shim connecting two of these redundant systems together, but only to use about 10% of the functionality of one of them so let's just leave out all the other functions of that system. This is why I have come to dislike old systems; the original design was probably fine back in the day (some exceptions apply), but if people have been sticking on new editions for the past twenty years, it's less likely that it in its entirety is of acceptable quality and trying to clean it up is such a difficult task that it appears completely futile.