Just an update for folks still having trouble. Other's tips/solutions (for example Jay's) have not worked for me, so I have submitted a bug report and with any luck we will get some resolution soon. In the mean time, I found that I can trick Mail into giving me the file it doesn't realize it already downloaded. You can do what others have suggested and get the file via a web interface (fairly fast), or you can change a line in the file and it should work (locally scriptable). I am not sure it works 100% of the time, but it has for me and I don't really have a reason to think it shouldn't.
It is convoluted, but do these steps and you may be able to read that attachment:
1) Grab the file with your mouse and drag it onto the desktop.
2) Right-click or cntl-click the file and open with TextEdit via the "open with>other" selection. Alternatively open TextEdit and open the file from within TextEdit.
3) Find the lines that read (they could be slightly different, but the big thing is it will have your broken attachment name under the 'name' and 'filename' keys (don't change any others):
Content-Type: application/applefile;
name="broken
attachmentname.doc"
Content-Transfer-Encoding: base64
Content-Disposition: inline;
filename="broken
attachmentname.doc"
and change: application/applefile;
to: application/msword;
(or whatever the MIME type is for your broken file, e.g. image/png, image/jpeg, etc.)
4) Save the email file being sure to maintain the .eml extension (if you do erase it either save it again, or change the file's extension clicking 'ok' when it asks whether you are sure you want to change to .eml extension.)
5) Double click the new file; Mail should open it; the attachment "should" be there and work.
Good luck.