Haiti, who had stunned Canada with a come-from-behind 3-2 victory in the quarter-finals, threatened to pull off another shock after a battling defensive display frustrated the seven-time Gold Cup winners.
But after holding Mexico to 0-0 through 90 minutes, Haiti were undone with a harsh penalty early in extra time at the State Farm Stadium in Phoenix, Arizona.
The flashpoint came in the second minute of extra-time when Haiti defender Jems Geffrard was adjudged to have shoved striker Raul Jimenez in the area.
Wolves striker Jimenez flopped to the floor and the referee pointed to the spot despite protests from Haiti's players.
Jimenez then dusted himself down and calmly sent Johnny Placide the wrong way with his spot-kick as Mexico breathed a collective sigh of relief.
Mexico goalkeeper Guillermo Ochoa was barely tested all game, but was given a late scare when a curling effort from Haiti substitute Mikael Cantave crashed off the cross bar in the 119th minute.
The defeat was cruel on Haiti, who failed to qualify for the tournament in 2017 and had never gone further than the quarter-finals in six previous appearances since the tournament was rebooted in 1991.
Mexico meanwhile will advance to the final at Chicago's Soldier Field on Sunday where they will face either the United States or Jamaica, who play in the second semi-final on Wednesday.