The Bavarians confirmed their place at the top of the table for the winter break with a fairly simple win against Christian Streich's side, who had Fallou Diagne sent off early on
A Thomas Muller penalty gave the visitors an early lead, and although the hosts were soon reduced to 10 men, Jupp Heynckes' side failed to add to their lead until the closing stages when Anatoliy Tymoshchuk capped a comfortable victory with a fine finish.
Unsurprisingly, it was the Bavarians who searched for an opening early on, but Freiburg registered the first shot of the match, with Julian Schuster finding space and curling a shot into Manuel Neuer's palms.
Soon enough, though, the logical breakthrough arrived. Bayern spread the play to Ribery on the left-hand side of the box and when the Frenchman played it against Oliver Sorg's arm, the referee pointed to the spot. Muller stepped up and squeezed it past Oliver Baumann, who could only get an hand to it.
A badly-worked free kick almost proved to be costly for Freiburg. Ribery accelerated and charged down the pitch, stepped inside the covering Jan Rosenthal, but bent a shot just wide of the far post.
Two minutes later, things got a whole lot worse for the hosts. A long ball sent Xherdan Shaqiri through and as the Swiss youngster was about to advance into the box, Fallou Diagne pulled him back and received a straight red card.
The 10 men, thinking perhaps that they had conceded a penalty, protested furiously, but once the melee had died down, Ribery drove a free kick through the wall, but Baumann got himself behind the ball well to stop it on the line.
Strangely, though, Bayern were not able to keep up their wave of attacks after Freiburg were reduced to 10 men. They controlled possession, but having regained their composure, Christian Streich's side stood firm.
Eventually, though, the visitors began to craft chances once more. Mario Gomez had a couple of decent chances, seeing a header blocked on the line by Buamann after a Kroos corner, before sweeping a shot straight at the keeper after he had been set up by Muller.
For all of the hosts' industry, the match was almost put beyond them on the stroke of half-time when Kroos' free kick found Dante, who was within inches of notching his second goal in as many games with a header that crashed off the woodwork.
After the restart, Bayern continued their assault on the Freiburg goal. A poorly cleared set piece fell kindly to the Ribery on the edge of the area, but the Frenchman's volley flew wide of the post, before the former Marseille man stung Baumann's palms with a ferocious 18-yard shot.
As in the first half, though, Freiburg found a foothold, and initially crafted few chances before Max Kruse came close to equalising with a low shot which Neuer did brilliantly to get down and save. Soon after, Daniel Caligiuri ghosted past Philipp Lahm, but took a heavy touch and let it slip to the former Schalke keeper.
At the other end, Claudio Pizarro nicked the ball off an opponent and sprinted towards goal, but could only shoot straight at Baumann. The win, which moves Bayern 11 points clear of second-placed Borussia Dortmund ahead of Saturday's showdown at the Allianz Arena, was finally wrapped up when Tymoshchuk sprung the offside trap to latch on to Lahm's ball, rounded the keeper and slotted it into the empty net.