My friend has the same problem with his iPhone, only its not that he doesn't just get texts from other carriers, he also doesn't get texts from my iPhone. Moreover, his responses often don't make it to anyone else's phones. The only solution we've figured out is he has to delete the SMS conversation he's been having with someone almost daily, and that seems to fix the problem. Once he clears and deletes the physical SMS conversation with any phone number, and then starts a new conversation and sends a message, that message is instantly received. I have no idea why this happens, and I think he ought to return his phone and get a new one - perhaps you should do the same.
Edit: thinking about it (based on the post above) he did actually get his number ported over... so that might be the root cause of all of his issues.