Thanks for the tips given here; I downgraded to stream SDK 2.2 and my hash rate jumped ~30 mhash/s to ~340mhash/s average.
A note to anyone else trying this; from SDK 2.3 to 2.2, your device numbers may change. I ended up with my CPU as device 0, which was previously my 5870.
Looks like I damaged the card.

Now this is weird. Looks like the card has "healed itself" today while I was at work, there's no trace of the problems any more. Bizarre, but I'm not complaining.

It's possible that the solder on some components came loose when you were overclocking, but the solder has now reflowed.
If it happens again (and if you've got some guts), you can attempt to
reflow the board using a toaster oven.