Bayern Munich closed to within a point of new leaders Bayer Leverkusen when Luca Toni and Franck Ribery gave them a 2-1 win at Schalke 04 on Sunday, while Hoffenheim lost 1-0 away to Hertha Berlin.
Toni, back after a rib injury, supplied a cool finish to give Bayern an early lead at one of their least favourite grounds.
Schalke were level almost immediately through Jefferson Farfan but Ribery, a different class to everyone else, scored his fourth goal in four league games to earn the champions a fifth successive league win.
Hoffenheim have surprised everyone this season and the wealthy village team defied predictions again on Sunday as their own five-match winning run came to an end at the Olympiastadion.
The much-vaunted trio of forwards Vedad Ibisevic, Demba Ba and Chinedu Obasi had a collective off-day and Hertha nicked a win when Andriy Voronin beat the offside trap and scored with 20 minutes to go.
Defeat proved costly for Hoffenheim, as it meant Leverkusen moved above them on goal difference following their 3-3 draw away to Karlsruhe on Saturday.
Leverkusen and Hoffenheim each have 25 points from 12 matches, with Bayern third on 24.
It is no coincidence that Bayern's revival, after a dreadful start under Juergen Klinsmann, has coincided with the return from injury of Ribery.
After the early exchange of goals, Schalke took control and it was only Ribery's ability to hold up the ball in midfield that gave the Bavarians any relief.
His goal was a work of art. The 25-year-old glided forward down the left and fooled two covering defenders by playing in Ze Roberto on the overlap.
Ze Roberto hesitated before pulling the ball back to the near post, from where the lurking Ribery stabbed first time into the roof of the net.
Bayern came under intense pressure as Schalke poured players forward and with Michael Rensing enduring anot