Burke became the most expensive Scottish player ever when moving to Germany from Nottingham Forest for £13m last month.
The 19-year-old winger came on for his Leipzig debut with 21 minutes left.
He set up a great chance that Timo Werner missed moments before crossing for fellow substitute Keita to score.
Leipzig are fifth and Dortmund eighth in the early Bundesliga table, with most teams having played twice.
Match ends, RB Leipzig 1, Borussia Dortmund 0.
Second Half ends, RB Leipzig 1, Borussia Dortmund 0.
Corner,  Borussia Dortmund. Conceded by Marvin Compper.
Attempt blocked. Adrián Ramos (Borussia Dortmund) right footed shot from the centre of the box is blocked. Assisted by André Schürrle.
Corner,  RB Leipzig. Conceded by Marc Bartra.
Attempt blocked. André Schürrle (Borussia Dortmund) right footed shot from outside the box is blocked.
Corner,  Borussia Dortmund. Conceded by Willi Orban.
Goal!  RB Leipzig 1, Borussia Dortmund 0. Naby Keita (RB Leipzig) right footed shot from the centre of the box to the top right corner. Assisted by Oliver Burke.
Hand ball by Adrián Ramos (Borussia Dortmund).
Substitution, Borussia Dortmund. Adrián Ramos replaces Pierre-Emerick Aubameyang.
Substitution, RB Leipzig. Naby Keita replaces Dominik Kaiser.
André Schürrle (Borussia Dortmund) hits the bar with a left footed shot from the centre of the box. Assisted by Lukasz Piszczek.
Foul by Ousmane Dembélé (Borussia Dortmund).
Marcel Halstenberg (RB Leipzig) wins a free kick in the attacking half.
Offside, RB Leipzig. Diego Demme tries a through ball, but Emil Forsberg is caught offside.
Attempt blocked. Marcel Halstenberg (RB Leipzig) header from the centre of the box is blocked. Assisted by Dominik Kaiser with a cross.
Delay over. They are ready to continue.
Delay in match Marvin Compper (RB Leipzig) because of an injury.
Corner,  RB Leipzig. Conceded by Roman Bürki.
Attempt saved. Timo Werner (RB Leipzig) right footed shot from the right side of the box is saved in the top right corner. Assisted by Oliver Burke.
Attempt missed. Timo Werner (RB Leipzig) right footed shot from the right side of the box misses to the right.
André Schürrle (Borussia Dortmund) wins a free kick on the left wing.
Foul by Diego Demme (RB Leipzig).
Ousmane Dembélé (Borussia Dortmund) wins a free kick in the defensive half.
Foul by Diego Demme (RB Leipzig).
Offside, Borussia Dortmund. Lukasz Piszczek tries a through ball, but Pierre-Emerick Aubameyang is caught offside.
Substitution, Borussia Dortmund. Ousmane Dembélé replaces Gonzalo Castro.
Substitution, Borussia Dortmund. Raphael Guerreiro replaces Mario Götze.
Corner,  RB Leipzig. Conceded by Lukasz Piszczek.
Attempt blocked. Timo Werner (RB Leipzig) left footed shot from the left side of the box is blocked. Assisted by Dominik Kaiser.
Substitution, RB Leipzig. Oliver Burke replaces Yussuf Poulsen.
Substitution, RB Leipzig. Emil Forsberg replaces Marcel Sabitzer.
Attempt missed. Marvin Compper (RB Leipzig) header from the centre of the box is too high. Assisted by Dominik Kaiser following a set piece situation.
Marc Bartra (Borussia Dortmund) is shown the yellow card for a bad foul.
Foul by Marc Bartra (Borussia Dortmund).
Yussuf Poulsen (RB Leipzig) wins a free kick on the right wing.
Attempt missed. Lukas Klostermann (RB Leipzig) right footed shot from outside the box misses to the left. Assisted by Dominik Kaiser.
Timo Werner (RB Leipzig) is shown the yellow card.
Sokratis (Borussia Dortmund) wins a free kick in the attacking half.
Foul by Yussuf Poulsen (RB Leipzig).
Scotland's Oliver Burke marked his RB Leipzig debut by setting up a late goal for Naby Keita to secure a 1-0 win over Borussia Dortmund in the Bundesliga.