Sure he can. He'll still be on the hook for the duration of the contract if he bought it subsidized, but he can just stick his SIM in a different phone. The new user just puts his SIM in the iPhone and it all will be fine.
You can switch phones in your contract at any point. You just can't get subsidized pricing for 2 years or however long the contract is. The only reason you have to sign a 2 year contract is so that the phone companies make their money back and a whole lot more on you. They don't give a damn what phone you use, as long as they get their money.