Gaming and I have come up with a brilliant solution to the idling problem!
Unfortunately, the solution requires a good deal of work on our parts and we have limited time.
The solution is this: an advanced idling tool that keeps track of the number of players on all the TF2 servers. It could, depending on the time of day, decide what a good number of idlers was (say 2 - 4 during peak hours and 10 -12 during the dull times of the day) and only idle on a given server if there were fewer than that many players on the server. If there were too many players on one server, it would look at another, and another until it found a good server to idle on, and if it found that all servers were decently full, it would disconnect.
The tool would check the number of players on a server every 10 - 30 minutes and if any server got below the number of advised idlers, it would rejoin that server. This way one could leave the idling tool on all day while one was at school, and know that they would be automatically disconnected if the server they were idling in became full.
The mac version is in the works, though it still crashes sometimes, and the algorithm for picking which server to idle on is not as good as it could be, but if anyone is desperate, they could beta test the app with me. It grew out of the original idling tool for mac, and the basic functionality of pick-a-server, idle-indefinitely is still there.
However, the final result is at least a month out, if not more. And Gaming hasn't begun work on the Windows version, so if you want that, you'll have to go bug him. . .