In your proposal, good nodes get assigned more traffic. But they do not need the traffic as they are already synced and only need few transactions here and there.
Actually not, it just add more randomization from the "client" let's call it point of view. More connections in single-threaded blocking fifo adds latency, so this would lead into randomization towards node from the client point of view. (client is not the right term, but let's use it for the demonstration). The overall result shall result in fair distribution, not accumulating traffic. That's the important point, that addresses many other questions such as forming regional forks.
In regards to what's already implemented, it's no secret this is heavy inspired by current fixes. This is just an attempt to make things go over further, but basically not changing the direction.
However you raised some good points that will require me to think a bit before replying. Thanks for good points!