I have had similar problems with my 20D. I was shooting raw and the problerm was a bug in the verson of bibble I was using to convert the raw files. An upgrade solved the problem.
I have also had problems earlier with corrupt cards while shooting jpegs, but that problem had a different look to images, they was more random with bits of other images mixed in.
Are you shooting in raw or jpgeg? What sw are you using to do raw conversion? What version is the firmware in the camera?
Shooting RAW + Jpeg. Using DPP (Canon) to process. Firmware v1 (just got the camera).
Unpredictable results obtained with both jpeg and raw files. With and without the card reader.
Just got another card and results are good so far - hopefully this resolves it. Will try more shooting & downloading today to test.