I want to comment on this because I've been experimenting with this for quite sometime.
When the EVO's had Android 2.1 on it, the default Messaging App had the issue where the pictures would over-compress (like they do to this day) whenever you attached a picture. However, when receiving an MMS, it wouldn't compress the picture...
I ended up using Handcent as the default Messaging application would convert all pictures sent/received as slideshows. Pictures that were sent to me came out in full quality and filled the entire screen when receiving them through Handcent.
Now with Android 2.2, the default Messaging application (MMS.apk) is not only over-compressing the images you send out, it's also compressing down the images you receive.
The MMS.apk is affecting the image quality for all the 3rd party messaging applications when receiving MMS messages. I know this for a fact Handcent will report the size of the attachment as it's downloading it. However when looking at the image properties, the file itself has been compressed down. I know this for a fact because I replaced the HTC Messaging (MMS.apk) file with the plain AOSP version of the APK, and by doing so, MMS pictures I received were no longer coming in over-compressed. (Nor were they being over-compressed to 5k images when attaching them to send out)
FYI: By replacing the MMS.apk file with the AOSP, this causes your phone to create automated text messages every time somebody leaves you a voicemail.
I'm not sure why HTC has MMS setup the way they do now... It really ruins the experience when you can't even send out a decent quality picture. I've called HTC several times about this, pointed out the issue, and they point the finger back to Sprint... Sprint claims they don't have a cap as to the size of the MMS pictures you send or receive... So I don't know who's to blame for this screw up.