The Americans opened the third period with a one-goal lead before Auston Matthews and Colin White scored 32 seconds apart to make it a 4-1 game. Mitchell Stephens cut into the deficit but Jordan Greenway answered for the U.S. before White completed a natural hat trick to put the game out of reach.
"The USA has a great hockey team and we didn't give ourselves a chance to win because we didn't move our feet and we didn't pressure the puck," said Canadian coach Tim Hunter. "We stood around and watched for too much of the game. We'll now regroup for the next game and get back to moving our feet, pressuring pucks, and checking better. That will bring us success and move us along."
Matthews also scored in the second period after teammate Clayton Keller opened the scoring. Deven Sideroff had the other goal for the Canadians, who suffered their first loss after five straight wins.
Canadian netminder Zach Sawchenko was pulled after giving up the fourth American goal early in the third period. He was replaced by Evan Cormier.
The Americans outshot Canada 38-18.
Canada will play Switzerland in the third-place game Sunday after the host side dropped a 5-4 decision to Finland in the late semifinal. The gold-medal game is also set for Sunday.
Canada has won this tournament on three occasions (2003, 2008 and 2013) and finished third last year.