Alex,
I agree with you in some respects but not completely. I agree it could be difficult to support if the two business units have a desire to be independent in their foundations. You have a point about the HKEY_CLASSES_ROOT, but don't you need to test this and see what does and does not work before you stop someone in their tracks and discourage them from doing it? I'm speaking strictly in terms of theory here. I don't like to discourage independent thinking and it's great when someone can come up with a new way of doing something previously thought impossible. It always depends on the circumstances, and in many cases you have to keep things the same due to those circumstances.
The way I set up my dev TSE, every developer directory has it's own copy of the system directory which is the foundation you are referring to. It will not function without it. If it's removed or corrupted in any way, the developer will not be able to log in to the system. That tells me it's using the independent system directory and things should work in that respect. I plan on testing SP3 this way and I will be able to tell you if I am indeed using SP3 on my developer directory and communicating with my lab server also on SP3. The other thing to consider is that when you publish the application, it might not be a bad idea to point each BU to it's own master copy of the service pack it's on. Any time a new service pack is introduced you would need to replace that directory in addition to the service pack on the enterprise server(s) and deployment server. If you are only running with one deployment server, this could be tricky if your two BU's are on different foundations and you would need to build a package using the alternate foundation method. There is a somewhat new document on the Knowledge Garden outlining this procedure. I've done this with success at least once already. I'd have to say it depends on which functionality the users need and what the pros/cons are against doing it one way or the other.
With the way prices have fallen for hardware, a server farm with separate servers for each business unit might not be out of the question. You'd want that anyway for load balancing. If they are wanting to do this because they only want to buy one server, these two business units must not have many users online at the same time. Not really for me to judge, though. I guess I just have to say it's important for everyone to test everything they do thoroughly before promoting a solution to production. They may find this is just fine for them, they may decide to scrap the idea all together when they realize how little benefit it is. Remember, creating a dependency on the other company or business unit is not necessarily a good thing. If you have to reboot a TSE because of one users memory leak and it causes downtime for the other line of business, that's not necessarily a good thing. The overall cost of such an implementation may be exceeded by lost revenue when things go awry.