Belgium were without injured record goalscorer Romelu Lukaku and struggled throughout with the pace of Canada’s forwards.
But the 2018 semi-finalists clung on to move top of what could prove a hotly-contested Group F after Croatia and Morocco’s goalless draw earlier on Wednesday.
Canada will head into their game against Croatia on Sunday still full of confidence after more than matching the team ranked second in the world, who next face Morocco.
The North Americans, matching Belgium in formation by playing three at the back, made a bright start and Jonathan David’s low effort was deflected wide.
Sponsored by Vuukle
From the resulting corner, Tajon Buchanan’s strike was blocked by Yannick Carrasco with his arm and a penalty was awarded after a VAR check in the 11th minute.
But Davies produced a weak effort which was saved low to his right by Courtois, before David lashed the rebound over the crossbar.
Belgium’s ageing defence were struggling with the pace of the Canada attackers and Junior Hoilett got in behind before firing a shot wide.
The underdogs kept coming, as Courtois palmed away right wing-back Alistair Johnston’s fierce drive and David headed off target.
Canada had a big penalty appeal turned down despite a VAR review when Axel Witsel was outpaced by Richie Laryea inside the area and then tripped his opponent.
Belgium grabbed the lead out of nothing when a simple long ball over the top from Toby Alderweireld found the run of Batshuayi who hammered home left-footed.
There was still time for Canada to create, and waste, another glorious opportunity before the break, as Laryea’s low cross was fired over on the slide by Buchanan from six yards out.
Canada could have levelled just minutes after the restart, though, as David headed wide from Stephen Eustaquio’s delicious cross after the Porto midfielder had nutmegged Kevin De Bruyne.
Herdman’s men continued to flood forward, but could not find the finishing touch required, with Buchanan miskicking horribly from the edge of the box.
The more men Canada committed, the more dangerous Belgium looked on the break and Laryea made a wonderful last-ditch tackle to deny Batshuayi a second goal.
Substitute Cyle Larin, the top scorer in CONCACAF qualifying for the tournament, headed too close to Courtois in a frantic finale.
De Bruyne could have put the game to bed but blazed into the crowd, while Larin sent another header spinning over Courtois’ bar as Belgium fell over the line.
(This story has not been edited by NDTV staff and is auto-generated from a syndicated feed.)
Featured Video Of The Day
Argentina Will Win The FIFA World Cup: Fans To NDTV
Topics mentioned in this article