Sharks forward Nikolai Knyzhov tied it 5-5 at 11:20 of the third period with his first goal since April 19, 2021.
Boone Jenner scored twice, and Daniil Tarasov made 27 saves in his first game since Jan. 17 for the Blue Jackets (21-38-7), who had lost four straight (0-3-1).
"It's tough to win on the road, it doesn't matter where you're playing," Columbus coach Brad Larsen said. "They got a little momentum there in the third, but [we] found a way to win. It's great."
William Eklund scored his first NHL goal, Logan Couture had a goal and two assists, and Kahkonen made 42 saves for the Sharks (19-36-13), who have lost nine of 10 (1-7-2).
"A very different game than Saturday (a 5-2 loss to the Minnesota Wild)," San Jose coach David Quinn said. "I thought it was very loose, I thought it had a pond hockey feel to it from our end of it. You're not going to win hockey games and give up six goals and be that loose and give up the chances we gave up."