Run bitcoind with the -rescan option.
No luck, sadly... I tried it with a copy of my original, un-edited wallet.dat, and with the wallet.dat I've removed the transaction from. I'm just puzzled...
If anybody would like to play around with this, the steps to reproduce the bug(?) are thus:
1. Back up your existing files!
2. Create a fresh wallet.dat and generate an address to receive funds at (maybe on Testnet :p)
3. Use an account from a different wallet to send a small amount of bitcoins to the new wallet
4. Transfer 100% of the funds from the new wallet to somewhere (TX fee size doesn't matter, but make sure you'll wind up with exactly 0.0 BTC from this transaction)
The transaction will never propagate through the network at this point, and the funds will reside in... well... limbo? If anybody feels like experimenting, I'd be very appreciative of any help to figure out how to retrieve the coins!