yeah, but you can't enforce a contract with yourself. That's the issue. If there is a written agreement between MCFC and NYCFC, and for whatever reason MCFC wanted the player back before the end of the contract, could Claudio Reyna or Jason Kreis really say "no, we have a contract"?
I think you're missing the point. Aside from the fact that Andy is right - all MLS players are technically employed by the league, not the club, and so it's the league who would hold the contract - you're completely forgetting about player registration rules.
When a player is transferred to another club - whether internationally or nationally, permanently or on loan - the transfer must be approved by the national Football Association which holds the registration of the club. The player is then registered to play with that Association. The FA involved is responsible for ensuring that the terms of the contract are adhered to. If one club had loaned out a player to another club which specified "no recall clause", and then the parent club managed to persuade the loanee and his new team to recall him, simply put the FA of his parent club would then step in and say "nope, you're registered with a different team, you aren't allowed to play for your parent this season". If City tried to recall a player and use him, they'd be hit with fines and points deductions in the Premier League.
The exact same thing happened this season, I believe, with Sunderland, who have caused a right situation. If I recall this correctly, they loaned out a player on only a temporary loan to a German side, but for reasons I can't remember, the German FA refused to hand over the player registration for him when they brought him back. Thus, when Sunderland played him in four PL matches, he was technically ineligible and Sunderland have been hit with a fine, and the relegated teams are taking the FA to court in the hopes of hitting Sunderland with a further points deduction which might save one of them from relegation.
Anyway, yes, you can hold a contract with yourself. It's perfectly possible for a company to bind itself to a contract that can result in punishment if broken. Besides, the two clubs are separate entities, so there's even further reason to believe that they can hold each other to contracts.