
iChat's stock resizing-widget prevents you from doing this manually, but you can make it happen with a one-line AppleScript I wrote:
tell application "iChat" to tell (a reference to the bounds of window "Buddy List") to set contents to (items 1 thru 3 of (get contents) & (item 2 of (get contents)) + 94)
There are about a million ways to execute scripts, so I'll leave that part up to you. This will only change the vertical height of the buddy list window, while leaving its width and position the same. To unhide your buddies, simply resize the window manually. You can modify the window title string as necessary for your Jabber and Bonjour buddy lists, too.
[robg adds: It should be a pretty simple matter to write a "rezoom" script to go along with this, but it's beyond my very limited AppleScript skill set. You could then use a macro program to assign keyboard shortcuts for the "mini" and "normal" modes.]

