2. Can I somehow view the details of my wallet? I imagine that I could send the offending small inputs away to a different wallet, if I only knew their exact face value and the order in which they appear in the wallet.
3. Is there any other way to "clean" my wallet, or reorder the items in it so that the offending items will be selected last instead of first?[/quote]
The bitcoin.org client doesn't provide a method to remove addresses. Pywallet does allow wallet surgery like that (-dumpwallet). Just make sure you make a backup prior to touching it.
You could list the transactions and for those with large enough unspent amounts you could then from a new wallet import them individually, giving you a wallet without the smaller transactions -- if those are what is really causing your problems.
I'm not sure if this does anything to help, but have you tried launching with a -rescan?
I also read that there might be a recovery mode in v0.7, I'm not sure if it made it in:
-
http://bitcointalk.org/index.php?topic=82070.msg904478#msg904478That is still in testing though it is a RC. I don't know that I'ld trust it with a wallet holding a larger amount of coins in it.
As long as you have the private keys, you can be assured that you can spend the funds eventually, so the problem is simply being able to use the existing wallet.dat from your client.
Right now I am thinking about this resolution strategy: [...] Obviously this method is costly because of the TX fees involved.{/quote]
The transaction fees are based on the amount of data, and not necessarily on the number of transactions. You might have transactions that cost way more after considering the fees than their value (e.g., the minimum commission on losing bets returned by SatoshiDICE when the wager was small).
Perhaps in v0.7 will be the fix, if you can wait. If you can't then manual transfer of the keys (excluding the worthless ones) to a new wallet will solve this.