France looked shaky and led by only six points until fullback Damien Traille surged over under the posts for a converted try in the 64th minute, taking the pressure off coach Marc Lievremont's despondent team at a rain-sodden McLean Park.
Clerc scored the only first-half try for France and then crossed twice late to earn France a bonus point and inflate the final scoreline in a way that didn't reflect the tussle — almost a carbon copy of the opening win over Japan.
Canada coach Kieran Crowley said his team let the chance of an upset slip away.
"It was very disappointing from our perspective, we were nine points behind at halftime and lost 14 points in the last five minutes of the second half," Crowley said. "We had reasonable patches, but we can't afford to do that at this level. We came here to win tonight and so we are very disappointed about that."
Lievremont, having lambasted his players after the Japan performance, this time tried to sound positive.
"I'm happy — I'm not going to sulk after every match my team wins with a bonus," he said. But, "obviously this doesn't mean everything was perfect and I didn't get annoyed at times during the match."
Asked what didn't please him, Lievremont said the players "were tense" and "obviously everything wasn't perfect."
With his tries in the 4th and 78th minutes and in stoppage time — against a tiring Canadian lineup playing for the second time in five days — Clerc improved the French record to nine tries in the World Cup, surpassing Christophe Dominici's eight.
"Last week was a difficult first match. Now, I'm very proud of the French team because we had a great match against Canada," stand-in captain Aurelien Rougerie said. "It's not easy to win against Canada, so I'm very happy to win tonight."
The Canadians had a 25-20 win over Tonga in a tough, physical encounter on Wednesday and simply ran out of steam late against the French.
"I think if nothing else we showed that we can live with the top teams," Canada captain Pat Riordan said. "I'm so proud of all of them. They're heartbroken right now. I think that probably shows a sign of the expectations we have for ourselves."
Although Clerc walked away with a hat trick, it was Traille who opened up what had been a tight contest.
Flyhalf Francois Trinh-Duc cut through down the right and Rougerie did well to catch his low pass and offload it to Traille, who broke two tackles with brilliant sidesteps and slipped through another to touch down under the posts.
Lievremont ripped his players after a sloppy opening win against Japan, but the lesson was clearly not learned as France played even more poorly in patches early on than it had last week — when it also scored three late tries in a 47-21 win.
Although France was 19-10 ahead at the interval, Canada missed out on nine points with fullback James Pritchard missing two penalties and flyhalf Ander Monro going wide with a dropped goal attempt.
Pritchard opened the scoring with a penalty goal but then collided with a teammate as he tried to take Trinh-Duc's up-and-under, lallowing the ball to bounce up for Clerc's first score.
Canada replied in kind, with Traille unable to handle a high kick before the ball bounced off the goal post and falling perfectly into the hands of Ryan Smith under the posts to make it 10-7.
Pritchard and Monro wasted scoring chances as Canada caused panic in the nervy French defence. But after Canada failed to roll away in the ruck, Parra slotted over to make it 10-10.
The French were clearly lacking confidence and putting pressure on themselves, surpassing the second-half slump against Japan for carelessness.
But Parra's trusty left boot soothed French nerves, with three cleanly-struck penalties in the last 10 minutes of the half putting France in command.
Pritchard missed another penalty to start the second, but Monro faired better with his second dropped goal attempt to trim France's lead to 19-13.
Parra landed another kick, but Monro's neatly taken snap from near the base of a ruck got Canada back within a converted try and a boilover threatened.
"We tried to put as much pressure on the French as we could," Monro said. "Unfortunately we let them get that momentum in the second half."
France finally created some pressure in the 55th minute when it camped on the Canadian line, but No. 8 Louis Picamoles could not hold the ball and the chance looked wasted until France got possession back and Trinh-Duc's quickly struck dropped goal sailed between the posts.
Pritchard's penalty made it 25-19 and ensured a tense last 20 minutes for Lievremont's team until Traille's flash of brilliance.
France 46 (Vincent Clerc 3, Damien Traille tries; Morgan Parra 5 penalties, 4 conversions, Francois Trinh-Duc dropped goal), Canada 19 (Ryan Smith try; James Pritchard 2 penalties, conversion, Ander Monro 2 dropped goals). HT: 19-10.