The problem is that I don't know if it's possible to have both the MSU-1 and the Cx4 at the same time. If it is then it'd be a solution.
Yes, it is. There is no conflict that I see. MSU-1 uses only a few addresses not asserted with the cart line and not in conflict with CX-4 A-bus registers.
And I wonder how many emus could handle a 96Mbit/12MB ROM with Cx4... the best way is to give it a try probably.
According to SNES9x, the ROM mapping is LoROM but it says that for all ROMs using special chips (including the Cx4) so I'm not too sure if it's just a default value in the SNES header or what.
Most likely none aside from BSNES. You'd need the ability to map all unused areas from all banks for maximum space. The closest you'll probably find outside BSNES is 'ExLoROM' support in SNES9x which has a maximum of 64Mbit. Even then, it's doubtful Cx4 support is provided under those mappings (You should confirm though).
It also can be tricky to expand a LoROM games in general to these extents because it may check or use normally mirrored areas, which would no longer be mirrored. It might require code modifications or copying some blocks of ROM to overcome this issue. I'd advise checking the documentation of Lunar Expand. It gives some nice pointers on expanding LoROM games and the issues you may encounter.
In some cases it's also possible to convert to HiROM and then 'ExHiROM' (Also 64Mbit limit) is an option and that is supported in ZSNES and SNES9x. If I recall, Tales of Phantasia maps 48mbit that way. Feasibility of conversion is determined by the size of the game and how it's doing it's access currently. That could get out of the realm of practicality very quickly though.
Regardless of mapping, you ultimately would to use the following regions for ROM:
C0-FF:0000-FFFF
40-7D:0000-FFFF
00-3F/80-BF:8000-FFFF
In theory, you could also use all available regions that go out on the A-bus regardless of cart assertions, which includes several other small regions (such as the ones MSU1 and CX4 use). I'd imagine there is definitely no support of any kind for that outside of BSNES. It wouldn't net you all that much extra space either and it is very poor on contiguous access (very fragmented), but if you wanted every last byte, it could be done in theory.