If Alice owes Bob 100 btc and her wallet contains exactly 100 btc, she may just email him her wallet.dat.
Now it's stored unencrypted in both parties email accounts...
Plus Bob possibly now gets any future money intended for Alice as he has those old keys.
You cant fix stupid, that's like saying if alice owe bob $1000 and her bank account contains exactly $1000. She may just email her bank account login/password + debt card to him. Then continue to deposit money into the bank account. Does that make any sense?
All average joe needs to do is install the bitcoin client on a usb dongle, plug it in when need to use and unplug immediately when done. It's no safer/riskier than logging into your bank account from your pc. It's expected the average user has antivirus running and keep their computer reasonably secure, if your computer is completely exposed with tons of virus/trojans, then anything on it gets compromised.
I think bitcoin is just fine the way it is.