Leigh Griffiths grabbed the opener from a free-kick in first-half stoppage time before Nir Bitton doubled the lead early in the second half.
Marcus Haber's deflected strike gave Dundee hope, but the Hoops survived some late pressure to extend their unbeaten start to the season to 20 matches.
"It's never easy when a team comes with 11 players behind the ball in half a pitch," said Celtic manager Brendan Rodgers.
"But overall, with five changes, I thought it was a very good result for us."
Aberdeen failed to reduce the seven-point gap that separates them from second-place Rangers, who won 2-1 at Hamilton on Friday, as they lost 2-1 to Ross County, while Hearts drew 1-1 with Partick Thistle.
With one eye on a busy festive fixture list, Rodgers made five changes to his starting line-up at Celtic Park.
Griffiths, who retained his place after a long run out of the team, came close to repaying his manager's faith early on as he played a quick one-two with Bitton before firing a first-time effort against a post.
Stuart Armstrong, captaining Celtic in the absence of the suspended Scott Brown, stung the palms of Scott Bain with a fierce strike from 20 yards as the Hoops probed for an opener.
Celtic's pressure should have paid off in the 18th minute when Ryan Christie played in Tom Rogic, but the Socceroos star somehow scooped his effort over the bar from six yards out.
The Australian midfielder tried to make amends on the half hour as he turned his marker on the edge of the box to get the ball on to his left foot, but his curling effort was held by Bain.
Moment of magic
Dundee almost made it to the break on level terms before they were undone by a moment of magic from Griffiths in added time.
Celtic were awarded a free-kick following a foul on Rogic and Griffiths stepped up to lift the ball up and over the wall into the top corner for his third goal in three games.
A period of constant Celtic pressure saw the home side move further in front in the 57th minute.
Emilio Izaguirre's cross was only headed clear to the edge of the penalty area, where Israeli international Bitton was waiting to side-foot the ball beyond Bain.
Dundee should have pulled one back in the 67th minute when a corner was headed onto the post by Haber before Craig Wighton's weak effort on the rebound was cleared off the line by Armstrong.
Celtic failed to heed the warning signs and two minutes later, Dundee reduced the deficit.
Haber slipped his marker and fired in a shot that took a deflection off Jozo Simunovic on its way past Craig Gordon.
Faisal El Bakhtaoui then missed a golden chance to equalise late on, somehow chipping over with the goal at his mercy.
"I felt overall we had a good game-plan today. We were playing against a top team with good players and they never really cut us open," said Dundee manager Paul Hartley.
"We hit them on the counter a couple of times and we had some good situations. The players are disappointed, but I'm pleased with how they performed today."