Bayern Munich took control of the title race with a thumping 5-0 win over Lucien Favre's side last weekend, but Dortmund returned to winning ways to leapfrog Niko Kovac's men ahead of their game with Fortuna Dusseldorf on Sunday.
England international Sancho was in scintillating form from the outset, scoring twice from close range inside the opening 24 minutes.
Mainz responded well to those early setbacks, twice hitting the post through Karim Onisiwo, and set up a tense finale when Robin Quaison prodded home seven minutes from time. Dortmund held on, though, to crank up the pressure on Bayern.
Jacob Bruun Larsen was denied early on by a smart stop from Florian Muller before Sancho scored his first in the 17th minute, the 19-year-old steering home Mario Gotze's cross with a controlled half-volley from eight yards.
He then took his league tally for the season to 10 seven minutes later when his low effort from Thomas Delaney's cross crashed off Moussa Niakhate and past the helpless Muller.
The hosts did not have it all their own way in the first half, however. Onisiwo went close to pulling a goal back but his improvised flick clipped the outside of the post.
The visitors did most of the pressing during the second period and Onisiwo was again denied by the upright shortly after the hour-mark.
Substitute Quaison pulled one back in the 83rd minute from close range and they could have even snatched a dramatic point if not for some remarkable goalkeeping from Roman Burki, who denied Anthony Ujah three times in quick succession.