Bob has the right idea. That's exactly what the problem is. The thing about Random Team is that it's rarely random at all; it would be more accurately labelled "Join Smallest Team." Going Random(or just joining the smaller team yourself, it's the same thing) is, simply put, a gamble. Not because you aren't sure which team you'll end up on, but because you aren't sure what everyone else is going to do. If the rest of the regulars decide to stick with the safer team, you and the poor newbs on your team are screwed. If a handful of them decide to leave the other team's portal and join yours, then maybe you'll actually get a good game. Unfortunately, most of the regulars don't like to take that sort of a gamble. They're afraid that if they go random and join the smaller team, another skilled regular is going to slip into the stacked one and the stacking will continue. Joining a stacked team may not be as much fun as an even game, but it beats the hell out of getting raped.
That's why BoP is the ideal solution. It makes teams truly random and gets rid of the mind games involved in choosing them.
Or, how about this; a plugin that makes it impossible to join teams for the first 10-15 seconds of the map, but if you join random it puts you in a queue. Once the time is up, everyone who went random is randomized simultaneously, and the rest can join as they see fit.