Thinking about deleting the database and letting it redownload, would that help?
It's blk0001.dat and blkindex.dat right?
Yup, that's the brute-force way. delete those two and restart.
You might first want to try, for shits and giggles, -rescan
e.g., bitcoin-qt -rescan