Reading winger Garath McCleary tapped in a rebound from close range in the 72nd minute after Jobi McAnuff’s shot had been saved as Jamaica beat El Salvador 1-0 in Toronto to clinch top spot in the group with seven points.
McCleary’s second goal of the tournament set up a quarter-final clash against Haiti.
The Jamaicans were reduced to 10 men when Darren Mattocks received a second yellow card in the 81st minute.
Defender Jermaine Taylor was injured in the opening minutes, while goalkeeper Dwayne Miller went down in the 23rd minute after taking a hit in the head and had to be replaced by Ryan Thompson.
El Salvador went into the game knowing a win would have sent them through to the quarter-finals but they could not breach the Jamaican defence despite their problems.
In the late match, Canada once again drew a blank in front of a partisan crowd at BMO Field in Toronto.
Canada had failed to score in their first two matches but they had a great chance to end the drought in the 24th minute when Dejan Jakovic’s throw-in set up an opening for Marcus Haber but his effort was saved.
A third successive draw was therefore enough for Costa Rica to advance to the last eight.
The result also ensured that Panama, the third-place side in Group A, are also through as one of the two best third-place teams, while El Salvador can also still progress but they need Guatemala and Cuba to draw their final Group C match on Wednesday.