The 24-year-old Spaniard, starting on pole position for the fifth successive race, stretched his overall lead over Ferrari's [ Images ] Michael Schumacher [ Images ] to 25 points at the halfway point in the 18-race season.
Alonso has 84 points and Schumacher 59.
Seven-times world champion Schumacher, also a seven-times winner in Montreal, finished second 2.111 seconds adrift of the Renault.
McLaren's [ Images ] Kimi Raikkonen [ Images ], last year's winner on the island circuit, finished third after ceding second place to Schumacher on the last lap. Alonso's win was the 14th of his career, his sixth in nine races but his first in North America.
It took his run of podium finishes to 15 in a row and was also the 100th victory in Formula One for Renault's tyre partners Michelin.
The safety car was twice deployed after drivers hit the unforgiving walls -- Germany's [ Images ] Nico Rosberg [ Images ] in a Williams on lap one and Canada's [ Images ] 1997 world champion Jacques Villeneuve with 11 laps remaining.