Mbappe gave Monaco a 19th-minute lead shortly after Fabinho had missed a penalty for the visitors, and they went further ahead when Dortmund defender Sven Bender headed into his own net.
Ousmane Dembele pulled one back for Dortmund in the 57th minute but another defensive mistake allowed Mbappe to break away and grab a third goal for the Ligue 1 side. Shinji Kagawa gave the German side hope with a neat finish six minutes from time.
German media had questioned whether the game should have gone ahead so soon after Tuesday's attack in which three explosions went off as the Dortmund team bus travelled to the stadium, injuring their Spanish defender Marc Bartra.
Monaco, who beat Manchester City on away goals after a 6-6 aggregate draw in the last 16, should have gone ahead in the 18th minute after Mbappe won a penalty but Fabinho pulled his spot-kick wide of the post.
One minute later, Bernardo Silva burst out of the Monaco half and flicked a clever pass to Thomas Lemar whose low ball across the face of goal bounced off Mbappe's knee and into the net.
Monaco went further ahead in the 35th minute when Andrea Raggi sent an inswinging cross towards Radamel Falcao and, although Bender got to it first, he only succeeded in heading it past Roman Buerki and into the net.
Thomas Tuchel's double substitution at halftime galvanised Dortmund who went out on the attack and deservedly pulled one back in the 57th minute.
Pierre-Emerick Aubameyang cleverly flicked Raphael Guerreiro's cross into the path of Kagawa and the Japanese laid the ball into Ousmane Dembele's path for the 19-year-old to tap into an open goal.
It was the first time two teenagers had scored in a Champions League knockout tie.
Falcao missed an open goal for Monaco before Mbappe, 18, intercepted a poor Lukasz Piszczek pass, ran on and calmly fired his shot past Buerki.
The drama continued as Kagawa grabbed another goal for Dortmund and Aubameyang headed over the bar in stoppage time from six metres.
WE WERE IGNORED: DORTMUND COACH
Borussia Dortmund coach Thomas Tuchel said his team felt ignored by the football authorities after being made to play the match less than a day after the attack.
UEFA said it made the decision after consulting both teams, however Tuchel said he and his players were not asked.
"We weren't asked at any point. We were told by text message that the decision had been made in Switzerland," he said in post-match interviews. "When they told us 'you're up tomorrow', we felt completely ignored."
"We would have liked more time to take stock," he added. "This gives you the feeling of impotence, that we have to keep functioning and nothing else matters.
"I encouraged everyone to take the game seriously but football is not the most important thing in the world."