Zach Werenski had two assists to pass Rick Nash for the most assists in Blue Jackets history (260). Mathieu Olivier scored the game-winning goal, Dante Fabbro had a goal and an assist, and Daniil Tarasov made 32 saves. Dmitri Voronkov had assists on two of Fantilli's goals.
The Blue Jackets (31-24-8), who lost their previous two games, moved into the first wild-card position in the Eastern Conference.
"I think we played how we play," Columbus coach Dean Evason said. "We talked about it before the game about the last two hockey games we didn't look like ourselves, we didn't play like ourselves. Maybe there's an element coming off the outdoor game (on March 1). Maybe the trade deadline and all that stuff. We were a little tentative, we were a little apprehensive, and tonight we weren't. We played hard. We played right."
Chris Kreider and Braden Schneider scored short-handed goals on the same penalty kill, Vincent Trocheck and Mika Zibanejad each had two assists, and Jonathan Quick made 21 saves for New York, which has lost three games in a row (0-1-2).
The Rangers (31-27-6) are one point behind the Ottawa Senators for the second wild-card position in the Eastern Conference. They lost in Ottawa on Saturday, 4-3 in overtime.
They play their next three games on the road at the Winnipeg Jets on Tuesday, the Minnesota Wild on Thursday and in Columbus on Saturday.
"We have 18 more games," Zibanejad said. "Yes, it's tough, especially two teams we're battling against. As frustrating as it is, and trust me it is, we have a big road trip coming up, we're getting these guys again next weekend, just have to find a way to win the games."
Justin Danforth gave Columbus a 1-0 lead at 5:56 of the first period.