I guess that's more a problem with the official client more than the protocol itself, though, right? If you were to create a new address and have all of those 'trackable' addresses send their balances to that new address, haven't you essentially removed this problem? I mean, all the people that sent to you in the first place can see where you sent the coins to, but they can't prove that you are holding that new account. Or is there something I'm missing here?
For what it's worth, I completely see how this is a problem. However, I don't see it as a particularly hard problem to solve (even 'programatically').
EDIT: and it was until I read the other reply here that I realised that that is actually your blog post. Nice work!