I have having volume problem with my iPhone from the moment i bought it. I tried googling around for a firmware to fix it but couldn't find any answer even though many people have reported this problem. Atlast, I found the solution, don't laugh over this :)
I wanted to keep my iPhone clean so I haven't removed the sticker that comes on top of it and the sticker covers the receiver as well. So I made a small cut/hole on the sticker where the reciever is and boom I have the iPhone working in all its beauty and I can hear my friends on the other end clearly... I think there might be few folks out there who didn't realize so I am posting this so they could benefit from it ;)