Haaland, who also netted a double in Dortmund’s 3-2 first-leg victory, tapped in a first-half opener and scored a retaken penalty after the break at Signal Iduna Park.
Sevilla forward Youssef En-Nesyri scored a 69th-minute spot-kick and a last-gasp equaliser but Dortmund clung on.
Haaland is the competition’s top-scorer this season with 10 goals in six games.
— Borussia Dortmund (@BlackYellow) 1615326979000
The 20-year-old has a career total of 20 goals in his first 14 Champions League matches to break Kylian Mbappe’s previous record of 19 for a player before his 21st birthday.
Although they had lost three of their four previous games, Sevilla dominated the opening exchanges and Dortmund had to withstand intense early pressure before taking the lead against the run of play.
When the Spaniards lost possession in their own half, Dortmund midfielder Mahmoud Dahoud slipped a pass to Marco Reus, who sprinted to reach the ball at the byline and Haaland diverted in his cut-back.
He had the ball in the net again just after the interval, but the goal was disallowed after the referee decided Haaland had fouled Sevilla defender Fernando before firing home from a tight angle after consulting the pitchside monitor.
Quarter finals👏🏽 Enjoy that borussen?🧞♂️#HejaBVB #JB22 https://t.co/PeyFNKZBGq
— Jude Bellingham (@BellinghamJude) 1615333970000
However, the referee also awarded a penalty after spotting a foul on Haaland earlier in the build-up.
Reus, Dortmund’s usual penalty taker, stepped aside to allow Haaland to take the spot-kick.
Although his first effort was tipped onto the post by Yassine Bounou, the Sevilla goalkeeper moved before the kick was taken and Haaland made no mistake with his second attempt.
Both Haaland and Sevilla midfielder Joan Jordan were booked for some pushing and shoving, with the La Liga side angered by Haaland’s celebrations.
Next round, here we come! 💪🏻⚫🟡 #UCL @ChampionsLeague https://t.co/SpPQzXy0Mt
— Erling Haaland (@ErlingHaaland) 1615329391000
Dortmund defender Emre Can also earned a yellow card and gave away a penalty for a blatant push on Sevilla forward Luuk de Jong, which Morocco striker En-Nesyri blasted home.
With five minutes left, Bounou produced a stunning reflex save from Dahoud’s shot in the area.
However, Sevilla were not finished and En-Nesyri netted again just before the final whistle as Dortmund weathered a late storm.