The 26-year-old from Saint-Ferreol-les-Neiges, Que., captured bronze in the 30-kilometre skiathlon, adding to the silver he won in the individual sprint earlier in the week.
"It's crazy," Harvey said. "I only had two medals in my life at world championships and now I have two in three days."
Maxim Vylegzhanin of Russia beat Olympic champion Dario Cologna of Switzerland, while Harvey edged Norway's Didrik Toenseth in a sprint for the bronze.
"It's a great day for me. Hard to believe," said Harvey. "The skis were fantastic. I had really good training over the summer, and I think the wax team are doing such a great job, it's hard for me not to be on the podium these days."
In the men's skiathlon, athletes complete a 15-kilometre course on classic skis before making a timed transition and head off for another 15 kilometres on skate skis.
"It's a bit of classic, a bit of skating, mass start, a long distance," Harvey said.
Harvey either led or was close to the lead in both the classic and skate portions.
Vylegzhanin, who won three silver medals at the Sochi Olympics and had three runner-up finishes from previous worlds, held off the Swiss star in a sprint to the finish to win in one hour 16 minutes 25.9 seconds. Cologna, the defending world champion in the event, finished 0.4 seconds back for silver, and just ahead of Harvey, who crossed in 1:16.27.5.
The world championship bronze was Harvey's fourth of his career. He won gold in the team sprint with Devon Kershaw in 2011 and was third in the individual sprint race two years ago in Val di Fiemme, Italy.
Norway finished without a medal after taking gold in the three previous cross-country events of the championships.