Timo Meier scored on a snap shot from the top of the right face-off circle with Jake Allen pulled for an extra attacker to pull the Devils into a 3-3 tie at 17:45 of the third period.
Jayden Struble, Ivan Demidov and Lane Hutson each scored for the Canadiens (45-21-10; 100 points), who have put together their second-longest win streak in the past 30 years after eight-game runs in 2016-17 and 2005-06. They won nine straight in 2015-16.
Jakub Dobes made 35 saves to win his fifth straight start for the Canadiens.
"I felt like my confidence was always there; it's just feeling comfortable, feeling good, and playing good hockey with the team," Dobes said. "That's really important right now."
Montreal is two points behind the first-place Tampa Bay Lightning in the Atlantic Division, and tied with the Buffalo Sabres. The Canadiens reached 100 points for the first time since 2016-17 (103). They host the Devils in the second of a home-and-home at Bell Centre on Sunday.
"I feel 100 points is good, but we're trying to get the best possible position for us to start (the Stanley Cup Playoffs) at home," Dobes said. "We're trying to finish first; that's the main focus right now."
Jack Hughes and Meier each had a goal and an assist for New Jersey (39-34-3), which is 7-3-1 in its past 11. Allen made 26 saves in his second straight start.
"Overtime is a crap shoot; there's no theories, no structure, no nothing," Allen said. "It's let your skill take over and you're going to win some, and going to lose some. But there were great chances at both ends. I think the fans got all the price of admission."
Struble gave Montreal a 1-0 lead on a wrist shot from the left face-off circle that dipped under the crossbar at 15:58 of the first period.
Demidov made it 2-0 with a power-play goal on a one-timer from the bottom of the right circle off Caufield’s cross-ice pass at 8:12 of the second period.