We looked for ways to do things like this in order to make it easier to build more code in jumbo mode, and came up empty handed. So I don't think there's a good way to do what you want.
You could experiment with symbol renaming or prefixing with objcopy, but I think this would require that you maintain a separate header file with the mangled names for client code to use. I have seen this used in some C libraries, but it makes debugging difficult, and I suspect this would be more difficult to do with C++ symbols. I doubt this would work well.
-Mostyn.