Lewandowski scored twice in an impressive 3-0 home win against Nuremberg to lift Bayern up from fourth to second in the table, but they remain nine points behind Dortmund.
Bayern will drop back to third if Borussia Moenchengladbach beat Stuttgart at home on Sunday.
In Gelsenkirchen, England winger Sancho, who suffered a bereavement in mid-week, slotted the winner 15 minutes from time to seal Dortmund’s first away derby win for five years.
Thomas Delaney’s first-half header for Dortmund was cancelled out by a Daniel Caligiuri penalty for mid-table Schalke before Sancho struck at the Veltins Arena.
Dortmund went ahead after just seven minutes when Delaney found space in the congested area to head home a floated free-kick by Marco Reus.
Schalke drew level on 61 minutes when the video assistant referee judged Reus had fouled Amine Harit in the area and Caliguiri banged home the resulting spot-kick.
However, Sancho hit the winner by going clear in the box after trading passes with Raphael Guerreiro and tapping home. He pointed to the heavens in celebration before disappearing under a pile of team-mates.
In Munich, Bayern proved their October and November dip in form is behind them with a third straight victory as they crushed Nuremberg.
Lewandowski struck after eight minutes at the Allianz Arena when he headed home a Joshua Kimmich corner with a deft flick.
The Poland goal ace then poached his second just before the half-hour mark when he followed up and tapped home after Leon Goretzka’s long-range strike clattered the crossbar.
Bayern maintained the pressure after the break and the Nuremberg defence was again torn open when Serge Gnabry’s fierce shot was saved, Franck Ribery reacting fastest to drill home the rebound on 56 minutes.
It was fourth heavy away defeat this season for Nuremberg having already been thumped 7-0 at Dortmund, 6-0 at RB Leipzig and 5-2 at Schalke.
Fourth-placed RB Leipzig lost grond in the title race after crashing to a shock 3-0 defeat at Freiburg, a notoriously hard place to get an away result.
Germany striker Nils Petersen gave the hosts an early lead before Luca Waldschmidt converted a penalty just before the break. Captain Mike Frantz headed in their third to lift Freiburg to 12th.
Hoffenheim came from behind to seal a 2-2 draw at Wolfsburg thanks to Andrej Kramaric’s late equaliser, while Bayer Leverkusen sealed a 1-0 win over Augsburg after Lucas Alario’s goal.
On Friday, Werder Bremen climbed to seventh with a 3-1 home win over bottom side Fortuna Dusseldorf as 18-year-old USA midfielder Josh Sargent capped his debut with the hosts’ third goal when he came on for the last 15 minutes.