I've been trying to fix this same issue for movies on my samsung galaxy s. One solution I've come across is changing the volume at the various steps on your volume slider. To do this, enter your dial pad as though you were going to call someone. Then type in "*#*#197328640#*#*" to open the service mode.
In the menu that appears, you can navigate to audio and change the values on the volume settings for various outputs (speaker, headset, handset, etc.) Unfortunately, this didn't work for me because my max volume was already set to the maximum value. Also, some people find they have to go through this process every time they restart their phone.
As for the apps like alostpacket mentioned, I'm looking for exactly what he described, but for all media files. Namely, videos as well as music. Anybody know any specific apps like that?