1. pywallet does this with the '--dumpwithbalance' flag (takes ~2 min / 100 addresses, of course depending on your connection)
Which version of pywallet does this? I got mine from Github yesterday, and it does not have this option!
2. why don't you just import the wallet.dat in another bitcoin-qt installation?
Because frankly, the mess with Bitcoin in Ubuntu is such (because of the differing libdb versions) that a different installation will crash on start up if I give it my wallet backup. I've tried.