Sean Kuraly, Cole Sillinger, Jack Roslevic and Alexandre Texier scored and Elvis Merzlikins stopped 30 shots as Columbus won its fourth straight home game.
Nick Bonino, Erik Karlsson, Brent Burns and Tomas Hertl scored for San Jose. Matt Nieto and Timo Meier each added two assists and Adin Hill stopped 24 shots in the loss.
"It helps your confidence when we start putting them in the net," Columbus coach Brad Larsen said. "Elvis made some really big saves, especially early in the game. This was a tough game."
The Sharks and Blue Jackets traded the lead through the first two periods.
Boqvist's slap shot at 16:16 of the first period got past Hill, giving Columbus the lead. It was Boqvist's fifth goal and eighth point in 11 games since returning from injury. Rookie Justin Danforth picked up his second career assist in as many games.
"We are a very annoying team to play against," Boqvist said. "We have to be annoying every night, Then it's fun to play."
Bonino surprised Merzlikins and buried the rebound of Nieto's wrap-around shot to tie the score with just 2.3 seconds left in the first period. It was his fourth goal in seven games.
The Sharks took the lead 21 seconds into the second period on a wrist shot by Karlsson from the blue line. Karlsson has scored six goals this season, including three in the Sharks' last four games.
"We didn't play our best game," Karlsson said. "We were a little mentally tired, and we didn't execute as much as we would have liked, and we made some bad decisions."
Kuraly evened the score 32 seconds later when he pulled up off the rush and his feed to Eric Robinson was deflected into the net.
San Jose went back ahead with a slap shot from the blue line by Burns at 8:44 of the second, his second goal of the season and first in 11 games. Sillinger pulled Columbus even at 17:49.
"It's huge to stop that losing streak, especially at home when we go on the road for such a long time," Sillinger said. "When we get these games at home, we have to capitalize on them."
Roslevic, a healthy scratch in Columbus' loss Saturday to the Washington Capitals, handily beat Hill at 1:57 of the third to give Columbus a 4-3 lead. Boqvist added the insurance goal at 5:34 of the third.
Herdl made it a one-goal game at 10:11 of the third, firing a shot over Merzlikins' left shoulder before Texier sealed the win with an empty-netter at 18:53.
"Dumb plays and they come back to haunt you," Sharks coach Bob Boughner said. "You score four goals on the road you feel like you should come away with at least a point, but they scored some timely goals and got some timely saves."
The Sharks' Brent Burns played in his 622nd consecutive regular-season game, dating to Nov. 21, 2013. He is tied with Karl Alzner for the 12th-longest consecutive games played streak in NHL history.
Andrew Cogliano, who notched a secondary assist on Bonino's goal, returned to the Sharks' lineup after missing three games to be with his hospitalized daughter.
OFF SIDES AGAIN - AND AGAIN
For the fourth time this season, Columbus had a goal called off for being offsides, this one Gus Nyquist's apparent score in the third. "It's crazy to me that it's happened as much as it has," Larsen said. "I'm pretty sure everybody understands the rule that the puck has to go over first, but maybe we have to go over it a bit."
Jakub Voracek's secondary assist on Boqvist's second goal was his team-leading 18th of the season and pulled him into a tie with Oliver Bjorkstrand for the most Blue Jackets points. He has just one goal in 23 games.
HOME SWEET HOME
Columbus has gone 9-3-0 at home this season, and its nine wins and 18 points are the most through the first 12 home games of a season in club history.
FROM THE MOUTHS OF BABES
"For an 18-year-old kid being in the NHL in Columbus with a young team, I wouldn't draw it out any differently," Sillinger said.
Boqvist received a signed stick from fellow Swede and defenseman Erik Karlsson, whom he has admired since childhood. "He's been my idol growing up," Boqvist said. "It was a cool night."
San Jose: Hosts Calgary on Tuesday.
Columbus: Visits Toronto on Tuesday.
Sharks and Blue Jackets trade back-to-back goals
Erik Karlsson gives the Sharks the lead in the second period, only for Sean Kuraly to score seconds later to level it 2-2.