This is because for it in order to work, there are two assumptions:
1. Each person plays the class or classes he is best as, roles that have pushed the stats to the level they are;
2. New server players are unfamiliar to the game or, otherwise said, eveybody plays the same amount of time on the servers, therefore the skill level being not affected by online time.
They could also be having an off day, messing around, or be another person sharing the same account.
It's not possible to perfectly match players up, except
maybe with realtime data as you point out, but that's okay since it's not desirable to do so either. Lifetime points and lifetime minutes provides a good indication of player quality while still providing a range of experiences, not just 24/7 stalemates.
With that said it is highly likely that there are more stalemates going on at the moment (I should get some stats reporting going), which could be considered worse than steamrolling depending on your viewpoint. I suspect that the secret to fun games is providing a good spread of skills within two well-balanced team: overall things are still even, but at the level of individual fights you'd end up with much more back and forth as talented players meet groups of newbies and drive them away. Currently the plugin doesn't do anything to encourage this.
I don't know what your second point means. Steam's stats are global and count only time played in servers, not just time with TF2 running. Idling is an issue but I work around it.
What I'm seeing right now from the plugin is it's putting all the regulars in one team, and cramming up the other with extra new players, assuming the regulars can take it.
Not sure why this would happen, unless there's a lot of churn in the other team. Is this something you find in general, or just something you saw once?
My suggestion would be to assign people at first based on stats, since that is better than random or stacking, BUT balance map performance based on current play from each player, not his history.
A good idea, but see above. It would also require team switching mid-round, which is something I want to eliminate as much as possible.