The anonymity is within using several addresses. Just use more than one.
Incorrect. Users can use taint analysis to establish a link between the few addresses. If the user accidentally spend inputs in two different address in one TX, it would be a clear indication of their link.
yeah there is even an online service called walletexplorer.com that everybody can use. it does the taint analysis and also has a database of exchanger's wallets for example so you sometimes can see who does a specific bitcoin address belong to.