Tyler Adams scored his maiden international goal, his 71st-minute effort lifting USA to its first win against Mexico since April 2015.
Mexico had appeared the better of two understrength sides at Nissan Stadium in Nashville.
However, the visitor was reduced to 10 men with 23 minutes remaining after Angel Zaldivar was sent off.
That moment swung the game in USA's favour, and Adams's nice finish proved to be the match-winner on the 17th anniversary of the September 11 attacks.
Mexico, under interim coach Ricardo Ferretti, made the better start and only USA goalkeeper Zack Steffen denied it a 16th-minute lead.
Edson Alvarez beat his marker to a corner, but his powerful header was tipped over by Steffen.
Diego Lainez, who caused USA plenty of problems throughout the first half, almost set up Mexico's opener eight minutes before the break.
The exciting winger produced some wonderful skill down the right before his cutback was eventually cleared.
USA improved slightly to begin the second half, while Matt Miazga and Lainez came face-to-face to bring some life to the encounter after the hour-mark.
Moments later, Mexico were reduced to 10 men when Zaldivar was sent off for a dreadful challenge on Wil Trapp.
USA only needed four minutes to make the most of their numerical advantage.
Antonee Robinson, introduced off the bench, provided a nice cross from the left, Adams completing his run from midfield with a clinical side-footed finish.