My bitcoind runs 24/7, and has 4 specific other nodes that I run, which it connects to... T
I think that's your problem right there.
When you shut down the client, it forgets about these invalid and unconfirmed transactions sent long, long ago from SatoshiDICE but since forgotten on by everyone else since they never confirmed. But then when you start your client back up, it learns of these again from these other four (polluted) nodes of yours.
Why not try a normal startup to the outside world, or with -connect= to a well connected node.