The results finished Haiti atop second-round qualifying Group 6 with six points, two better than both French Guyana and Grenada. Since French Guyana and Grenada drew 1-1 in their head-to-head meeting on Wednesday, French Guyana advanced over goal difference (zero to minus-1).
Guyana finished last in the group with three points.
Jean-Sony Alcenat gave Haiti the lead in the 36th minute, and an own-goal by Anthony Straker in the 58th added the insurance. Despite a 1-0 loss to French Guyana on Friday, Haiti responded with its sixth win in its last seven matches.
March Edwige put French Guyana into the Caribbean Cup finals, scoring in the 91st minute to pull his side within a goal.
Guyana went ahead in the 12th minute on Vurlon Mills' fourth goal of Caribbean qualifying. Stanley Ridel scored the first of his two for French Guyana in the match in the 34th, but Walter Moore and Shawn Beveney tallied in the first 13 minutes of the second half to restore Guyana's lead 3-1.
Ridel pulled French Guyana back within a goal in the 63rd, but Beveney converted a penalty in the 87th.
The results ended Grenada's streak of qualifying for the past two Caribbean Cup finals, where it finished runner-up in 2008 and fourth in 2010.
Haiti will join Group A in the Caribbean Cup finals along with the Dominican Republic, Trinidad & Tobago and host Antigua & Barbuda.
French Guyana will be placed in Group B with Martinique, defending champion Jamaica and Cuba.