Functionally, it is a two-party system, but it’s certainly not a requirement. Third parties have, in the past, made tremendous headway (see Republicans over Whigs).
It is functioning as a two-party system purely because they have achieved legal dominance and have engineered all to fit the template of 2 parties.
There is no reason, for example, why the Constitution Party could not wait on its convention until after the Republican and endorse that candidate if conservative enough to suit their principles. They would, in that case, not run their own candidate.
This would be a way for alternative parties to flourish. It would provide a means to grow, attain an identity, and stand for a set of conservative principles. (A conservative caucus within a party could not then run its own candidate if they did not support the chosen candidate...as with Romney this time.)
However, the system is set up so that ballot access is virtually impossible to attain, much less at a late date.
There is absolutely no reason the above process should be legally impeded in any way. As an illustration, having GW Bush’s name on, say, BOTH the Republican Line and the Reformed Line should gain a vote for Bush whether from a Repub voter or a Reformed voter.
I am betting that is legally impeded.