They have won 21 of their 26 league games this season and now only need to beat Hamburg at home next Saturday, then win at Eintracht Frankfurt on April 6 to have their 23rd German league title confirmed.
Bayern are also eyeing the Champions League title. Despite losing 2-0 to Arsenal on Wednesday, they still reached the quarter-finals on away goals to face Juventus.
With captain Philipp Lahm, wing Thomas Mueller and striker Mario Mandzukic all rested for the trip to Leverkusen, Germany forward Mario Gomez showed his strength with the opening goal on 37 minutes.
Leverkusen, the only team to beat Bayern in the Bundesliga this year, pulled a goal back when Simon Rolfes exploited some poor defending to score from a corner on 75 minutes.
But Bayern took the three points when Bastian Schweinsteiger's free kick deflected off the shoulder of Leverkusen's Philipp Wollscheid into his own net on 87 minutes.
"It's always difficult to win at Leverkusen, it's only their second league defeat at home this season," said Germany star Schweinsteiger.
"They are always dangerous on the counter-attack. We conceded a standard goal which Jupp Heynckes has prepared us to defend against hundreds of times, which is annoying."
Earlier, second-placed Borussia Dortmund routed Freiburg 5-1 with Poland's Robert Lewandowski and Turkey's Nuri Sahin both scoring twice. Dortmund, who play Malaga in the last eight of the Champions League, ran riot at Signal Iduna Park as Lewandowski set a new club record of scoring in each of his last eight league games.
Having fallen behind to an early Jonathan Schmid goal, Dortmund grabbed the game by the scruff on the neck to flatten Freiburg with three goals in five minutes at the end of the first half.
Lewandowski opened the floodgates with his eighth goal in consecutive
league games on 41 minutes. But the Poland star is well short of Gerd Mueller's Bundesliga record of a goal in 14 consecutive games for Bayern Munich.
The rout was wrapped up when 19-year-old Leonardo Bittencourt scored his first Bundesliga goal, two minutes after coming off the bench, on only his second league appearance, on 78 minutes when he tapped home a Lewandowski cross.
Schalke were hammered 3-0 at Nuremberg to drop down to fifth and out of the Champions League places, having been dumped out of Europe's top competition with a home defeat to Galatasaray on Tuesday.
Ex-Dortmund midfielder Markus Feulner put Nuremberg ahead before Alexander Esswein converted a pass from Japan's Hiroshi Kiyotake for the hosts second as the Japanese star again provided the final pass for Mike Frantz to score the third.
Relegation-threatened Augsburg picked up their fourth win in their last 10 games to keep their survival hopes alive with a 1-0 win at seventh-placed Hamburg, but the Bavarian team remains five points from safety.Werder Bremen midfielder Aaron Hunt converted two second half-penalties to give his mid-table team a point in their 2-2 draw at bottom side Greuther Fuerth.
On Sunday, fourth-placed Eintracht Frankfurt are home to VfB Stuttgart, who are just one place above the bottom three, while mid-table Borussia
Moenchengladbach host Hanover 96.