After some experimenting, I found this is remedied easily enough: create folders/labels with the prefix "INBOX/". For example, INBOX/foobar. Then your mail client will show the folder underneath your Inbox. Much better.
Even though this gets Mac OS X's Mail.app to put the little triangle next to your inbox, you still can't seem to drag folders directly under your Inbox. You could create all your folders manually, or I found you can drag folders under any new folders you create. So I just created a folder called INBOX/folders, and then dragged all my folders under that.
Finally, I started using Mail.app to copy everything en masse, but it kept crashing on something. Fortunately, Thunderbird came to the rescue. While not completely without problems of its own, it didn't crash nearly as much and with it I was able to copy all my mail over.
Update: I found this Ruby script which is doing a much better job than either Mail.app or Thunderbird. Nice, clean Ruby code and it'll only copy stuff up to Google that's missing (i.e. you can run it over and over again).
Google also has posted How do actions sync in IMAP? which answers some questions on how they map IMAP actions into their own mail system.
Thanks to this post at maxoshints.com for some ideas.