I have not been having any such problems with iChat. Have you tried just reinstalling it? Maybe a framework or two got corrupted.
Also, I’ve noticed lots of weird crap happens between unrelated apps which all have a menu extra, because they all go through SystemUIServer. Like, iSync loves to freeze SystemUIServer if I initiate a sync when my cellphone is visible and my iPod is docked but not mounted, and it stays frozen until I undock my iPod. This is whether I actually have the iSync menu extra visible or not. I have many times thought that it was a lot earlier than it actually was because the date/time menu extra was frozen!
(My solution was to just always start iSync by docking the iPod. Meh.)