The real reason is an attempt to "stupid proof" the services. They want to force you to deliberately make an effort to transmit on the service you intend to use. If you had a mismash of frequencies from multiple service scanning at once, the chances of you responding to the wrong service with the wrong call sign is very high. If you have 2 different radios, you deliberately grab the GMRS microphone and transmit on the intended frequency. Now, it has happened to even the experienced operators, grabbing the wrong microphone and using the wrong call sign.
Are there good best management practices that can be used to minimize the cross use of services, and tossing out the incorrect call sign? Sure there are, but how many new licensees have enough trouble understanding how to program a single repeater, let alone run zones/scan lists/etc. Now toss in inexperience, and difficulty reading the rules directly from eCFR. It is much easier to say separate radio for each service than to try to write BMPs into the code as hard and fast regulations.