So not only can they be spent, they can even be spent and pruned for free. Yes, I've done it myself.
you have a missing incentive structure. A gambler doesn't care about the technological implications of dust output. His main concern is economic.
To get a fee of 0.01 you need at least 10^6 satoshi inputs. So there's no economic incentive. The only thing which would help is an intelligent client which "sweeps" the satoshi output and throws it in as a fee. However, as pointed out before, in a crowded blockchain, that little bit of required extra space may cause another important transaction to be left out, so there's no free lunch.
Overall transactions which have no intent of being spent (for economic or other reasons), pollute the blockchain. We need an incentive structure to discourage that - or at least make it expensive to do so.