I used to have this problem with my Nexus One on T-Mobile, and now have it again on my Samsung Galaxy SII on Sprint. It seems like about every other MMS message I get will fail to download. It'll just sit in that "downloading" state forever. (Note: it is not actually a pattern of every other time.) I have the stock Android messaging app that comes with the phone.
I have found dozens of threads about this out there on various Android forums, but all of them seem to be pre-ICS and so I don't have the settings the solutions refer to. The solutions all seem to be really esoteric, too.
If I can make it stop getting "stuck" that's great, but I figure the easier question is as posted: once it gets in that stuck state, how can I force it to restart the download? That'd be enough to fix the issue for me.