(I'm using the sizes of the snapshots starting Sep/2011, provided by Bitcoincharts for my estimations)
On a rough average, the chain grows by 10% each month, although that may be too low, seeing that in May, it grew by 20%. Even if we just assume 10%, the chain
Your exponential growth figures are incompatible with the current operations of the software. The current absolutely maximum rate of growth is about 52Gbytes/yr. This is high and scaling improvements are needed to deal with it but with the download eventually not blocking use of the software its less of an issue. ... But fundamentally running a full bitcoin node will remain to be more burdensome than alternatives. It's also more secure— both for yourself and for all the users of bitcoin.
Some of the large blocks hog CPU, making it a pain to catch up. While waiting for the update to complete, I got stuck at block 181868 (526 tx) for more than 15 minutes with 100% CPU. It got so annoying that I stopped the client after that time. As a result, I'm currently stuck with an outdated chain. It's become easier to just download a nightly snapshot and do a rescan than letting the client update a few days; even though this takes ~5 hours on my connection. Yet with the next big block, the problem arises again.
This sounds strange, unexpected, and it's inconsistent with what other people are experiencing. What version of the software are you running? On what kind of system? (OS? CPU? Memory? SSD? HD?). Especially the report of high cpu on a single block is surprising— there should not be more than a second to a few of CPU time spent on any block.
While most of the users won't have to deal with internals, it still should be possible to manage wallets easily. I can extract keys via the pywallet tools after setting up Python, but a simple standalone tool should come with the client itself. Having said that, the devs of the various clients should agree on a wallet export/import format (XML?) to make it dead simple to switch between different clients.
I'm not sure why you're using pywallet. Bitcoin has had integrated key import/export for something like a year now. Can you help me understand what's missing?
Moving between some different clients may be easier in the future, I don't know if it will ever be dead simple simply because differences in how wallets are handled are part of the distinctions which make alternative clients worth having.
4. Merge coincontrol
This is not a problem but a feature request. I've used the 0.6.2 release with coincontrol merged in recently. You quickly get used to this great extra and miss it in the official releases.
This is now becoming increasingly to happen because no one is stepping up to continue maintaining it.