On-loan Chelsea forward Gael Kakuta gave Dijon the lead in the 67th minute before midfielder Tinhan headed in with just two minutes left to play.
The visitors struggled to create chances throughout while 15th-placed Dijon were always a threat and it came as no surprise when Kakuta poked the ball into an empty net after a shot from Eric Bautheac came back off the woodwork.
Montpellier have 54 points from 26 games.
Champions Lille, in third spot, also drew 2-2 at home to second from bottom Auxerre.
Eden Hazard scored twice for Lille, one a penalty, but goals from Ben Sahar and Cedric Hengbart earned Auxerre a point.
Mauro Cetto of Lille was sent off in the 41st minute and Auxerre's Anthony Le Tallec also received a red card in the 68th.
Olympique Lyon, in sixth, and eighth-placed Olympique Marseille slumped to defeats on Saturday.
Ahead of their midweek meeting with APOEL Nicosia in the Champions League, Lyon were beaten 2-0 in Nancy who climbed out of the relegation zone.
Marseille suffered a 1-0 home defeat by Toulouse who rose to fifth spot in the table after Aymen Abdennour scored the only goal midway through the second half.
"It's one of our worst games of the season," Marseille coach Didier Deschamps told the club's website.
The home team were without the injured Loic Remy and Mathieu Valbuena. "It's hard to cope with their absence in such an important game," said Deschamps.
Fourth-placed Saint-Etienne are 1l points behind Montpellier after losing 2-0 to Evian.
Nice are 16th after a penalty by Luciano Monzon and a goal from Abraham Gnuie Gneki gave them a 2-1 win at Girondins Bordeaux who are ninth.
Get the best features, fun and footballing frolics straight to your inbox every week.
Thank you for signing up to Four Four Two. You will receive a verification email shortly.
There was a problem. Please refresh the page and try again.