QUOTE
...why fonts make such a difference?
On one hand it's font-size rather than just font-family, on the other hand, it could be that 'containers' (div's) are dimensioned with 'em's' a measurement based on the font size, on the third hand(!) it may just be the different ways different browsers handle CSS! And since I've already borrowed one hand, I'll stop there.
Seriously(!), it may also depend on how the div's are being positioned, various IE versions don't like relative versus absolute methods. Plus, margins and padding are calculated differently (incorrectly) in IE and NS/Moz. If any of these containers had both/either, they might become too large to fit in the window as happend with you. Third, it may be how the div's are deminsioned (as described above). If the fonts were too large, that would force the container (which usually size themselvs to hold whatever is put into them) to become just a little too big. And they might even become only wider, not just taller, which could cause the problems you saw.
Of course, the real problem may just be badly constructed php/code and it's interaction with all those hands laying around!