Jonathan Lucroy contributed an RBI single in the final frame before Eric Hosmer cleared the bases with a double for Team USA, which won Pool D and will start second round play of the WBC on Tuesday in Miami, where they will face Puerto Rico.
The Americans fell into a 2-0 hole early and trailed 3-2 after seven innings, but Jones' double in the eighth off Jimmy Henderson (0-1) put Team USA ahead for good.
Joe Mauer led the inning off with a single and after David Wright walked, Willie Bloomquist replaced him on the basepads. Jones then ripped a shot over the center fielder to score both runners and Shane Victorino's bloop single sent him home, putting Team USA ahead, 5-3.
Canada loaded the bases twice in the bottom of the eighth, but were only able to plate one run.
Adam Loewen, who gave Canada a one-run lead in the sixth with an RBI single, came up with the bases loaded in the eighth but was only able to bring Canada within 5-4 on his run scoring groundout.
Michael Saunders hit a two-run homer off United States starter Derek Holland in the second to give Canada the early 2-0 lead. Holland, however, kept the Canadians off the board over his last three innings of work. He allowed just four hits and struck out four over five frames.
USA came back to knot the game at 2-2 in the top of the fourth. Mauer scored from third after Taylor Green made a throwing error on Ben Zobrist's bunt and Wright, who reached on a walk, advanced to third on the play before scoring on Jones' sacrifice fly.
Canadian starter Jameson Taillon exited after the inning. He allowed four hits and was charged with one earned run. Canada has never made it out of the first round in its three appearances at the WBC.