Henrikh Mkhitaryans sublima solomål visade skillnaden när Dortmund flyttades på andra plats inom fem punkter.
Armenien kapten sprang på avstånd försvar från djupt innan skjuta i nedre hörnet från 20 meter.
Pep Guardiola sida kan återställa sin åtta-punkts ledning med en seger på relegation stridare Augsburg på söndag.
Bayer Leverkusen flyttade in i tredje när de kämpade tillbaka bakifrån för att vinna 2-1 på Darmstadt, medan Hertha Berlin föll till fjärde efter att ha förlorat 2-0 på Stuttgart.
Andra-bottom Hoffenheim, med ny 28-årige chef Julian Nagelsmann tar ledningen för första gången, drog 1-1 på relegation rivaler Werder Bremen.
Borussia Dortmund minskade gapet på Bundesliga ledare Bayern München med en hårdnackad seger mot nedre sidan Hannover.