I can only hear iPhone sound when using headphones?

My volume is turned up, without headphones I can hear the keyboard sounds, the phone ringing, the sound when I get or send an imsg - but I can't hear audio like music in games, YouTube audio, my friends' voices in the app heytell, etc.
I tried a "hard" restart (where you hold down the two buttons for a few seconds and it turns off), I've tried reinstalling said apps. Don't know what to do now.
Btw I have an iPhone 3GS and just last week I switched to tmobile from AT&T, had to unlock phone, but as of yesterday the sounds were working just fine?

1. Thats not hard-reset, thats soft. Hard is either re-installing os, updating or restoring.hook up to itunes and you should be ready to go.
2. Try cleaning the left from dock when screen is up. Use comprimized air, or open and remove grill.