Brandon Saad gave St. Louis a 4-3 lead at 4:38 of the third when he took a pass from David Perron near the top of the crease and shot into an open net. It was his 200th NHL goal.
O'Reilly made it 5-3 at 10:50 when he redirected a point shot from Niko Mikkola.
"For myself, not scoring a lot of goals lately, that's where they're going to come, by me getting to the net," said O'Reilly, who had scored once in his previous nine games. "It was a great shot pass by 'Miko,' and I was able to get a little tip on it."
Buchnevich scored an empty-net goal at 16:43 for the 6-3 final. He has scored nine points (three goals, six assists) during a five-game point streak.
"They have a lot of skill. They're one of the top teams in the NHL on the rush, and we knew that going into the game that it was going to be a challenge for us to defend against that, and they got the better of us," Toronto coach Sheldon Keefe said. "We didn't do a good enough job. They've been doing that pretty consistently to everybody in the league.
"They're as dangerous as any team in the NHL on the rush, and they showed that tonight."
The Blues took a 1-0 lead at 2:58 of the first period when Buchnevich put in the rebound of Jordan Kyrou's shot.
Klim Kostin made it 2-0 at 11:40, taking a cross-ice pass from Tyler Bozak and scoring blocker side from the right circle.
"We've been getting contributions all year from everybody, and we've got to continue to do that," Berube said. "It was really nice tonight that we got all four lines involved in the offense, and Husso did a great job shutting that game down for us."