What I believe is going on is that your download's truncating because of lack of drive space in your cache files system. The resulting file is corrupt and won't install properly. I find that I'm fairly low on cache space most of the time... (I currently have ~ 15MB of cache free) it was significantly worse when I had some applications "stuck" in Amazon's app store...
When the Dalvik-cache was migrated to the /cache file system to free up space in /data it consumed that same space in the /cache filesystem which is used for updates, market downloads, etc... This is great if you're not concerned about downloading updates... not so good if you need to install an update... all of your market downloads get put in /cache before they're installed... I've also noticed that "moving apps to SD" still consume /cache file system space for their "dex" cached version....
What I've found to work is to remove some of the dex files from /cache/dalvik-cache.
If you have ADB handy launch adb shell, and make sure you remove any spare *.apk files in your /cache folder... (I'm not certain if you have to "adb remount" before you do this or not... I generally do just to be safe)
I free up space in /cache file system by removing a couple of "dex" files - I generally try for the application that's being updated anyway... The dex files are located in /cache/dalvik-cache... someone else can better explain what these are... I know this folder can be re-generated during the phone boot-up process.
A couple files that are fairly safe to use include:
data@app@com.google.android.youtube-1.apk@classes.dex - youtube's pretty large (~ 2.xmb)
data@app@com.google.android.apps.googlevoice-2.apk@classes.dex - google voice is also pretty large... (~ 2.5mb)
IF You don't know what I'm talking about, then don't do this... if you do but aren't 100% certain, make a nandroid... if you think you might mis-type something... make a nandroid... if you are concerned in the slightest... make a nandroid... if your current nandroid is more than 1 week old - or if you might lose something significant with a mis-type make a nandroid... (I think I've about covered it... make a nandroid backup...)
Note these files will be re-populated the next time you reboot your phone... and actually, I think they get re-generated the next time you try and use the application...
Note: if you foul up your phone, it's not my fault... I have successfully done this on my phone several times...