The 17-year-old headed in at the far post in the 79th minute to take Dortmund to the summit on 15 points and become the youngest ever scorer in a Ruhr derby.
The Germany international, who was called up for the Nations League matches against Hungary and England this month, turned his ankle and had to be treated on the pitch for several minutes before being taken off in the 32nd minute.
Reus sat out Germany's 2014 World Cup-winning run after being injured in the final warm-up game before their departure to Brazil. He also missed Euro 2016 due to injury.
Dortmund were the better side throughout but hit a wall with Schalke's defence working hard. Schalke, however, offered little in terms of attack, and had to wait more than an hour for their first shot towards goal.
Dortmund wasted several more chances before Moukoko's entry in place of Anthony Modeste in the 64th changed the game, with the teenager finding the right gap in the box to rise and meet Wolf's cross for the winner.