Canada won its second straight World Cup qualifier, putting the Canucks on top of Group D of the second round of CONCACAF qualifying.
The goals came late in the halves.
Iain Hume put Canada ahead just before the halftime break, smashing a low shot from near the penalty spot to give Stephen Hart's side the lead.
Substitutes Simeon Jackson and Tosaint Ricketts scored at the close of the second half to turn a nervy win into a solid one.
Canada next faces St. Lucia again, this time away, on Oct. 7.