Niclas Fullkrug's clinical first-half finish settled the semi-final first leg in the hosts' favour, but BVB were fortunate that the French champions left their shooting boots at home, while they also let numerous chances to increase their advantage pass them by.
While PSG received a pre-match boost with the news that Nuno Mendes was fit to start at left-back following an injury scare, the Portuguese quickly came under siege from a fired-up Dortmund side.
Attacks down the right through Jadon Sancho and Julian Ryerson were proving particularly effective for BVB, who forced Gianluigi Donnarumma into the first meaningful save in the 14th minute, but the angle was too tight for Marcel Sabitzer to beat the Italian.
Down the other end of the field, a couple of half-chances came and went for ex-Dortmund product Ousmane Dembele, but Kylian Mbappe was largely starved of service and did not manage a single attempt in the first 45.
Fullkrug fires Dortmund into deserved lead
The same could not be said for his opposite number Fullkrug, through, as with 36 minutes on the clock, the Dortmund talisman broke the deadlock in true number nine fashion.
For all of their promising build-up sequences, it was one ball over the top that carved the PSG backline open, as Nico Schlotterbeck's inch-perfect pass sailed through to Fullkrug, who timed his run to perfection, took one exquisite touch and fired a low strike down to Donnarumma's right.
Dortmund's lead was fully warranted, and things went from bad to worse for PSG when Lucas Hernandez was withdrawn through injury in the 42nd minute; Luis Enrique held fire on making an offensive change and introduced Lucas Beraldo in a like-for-like swap.
With one minute of normal time remaining, Donnarumma once again denied Sabitzer - this time on the volley - to keep Dortmund's lead at just the one, and neither manager saw any need to make any half-time alterations.
Edin Terzic's men were highly fortunate to cling onto their lead just six minutes into the second period, though, as both Mbappe and Achraf Hakimi struck the inside of the post during a chaotic and ominous few seconds.
Dembele endures woeful night against old club
The former then sent a stinging drive straight into Gregor Kobel's midriff in the 54th minute as PSG ramped up the pressure, but the ball just would not go in for the French champions, as Fabian Ruiz then horrifically sent a 56th-minute header well wide with most of the goal at his mercy.
Wastefulness was not just limited to the French champions, as Fullkrug then spurned a magnificent chance for his second on the hour mark, volleying over the top from close range after brilliant work from Sancho to get to the byline.
The Dortmund goalscorer then felt hard done by not to win a penalty after a slight - albeit inarguable - nudge in the back from Mendes as he rose for a header, and PSG soon went back to squandering opportunities.
Dembele was the guilty party on two occasions, as Kobel managed to get a slight hand on his weak shot in the 72nd minute, eight moments before the Frenchman fired over the bar from Hakimi's brilliant cutback.
Another close-range Ruiz header then cleared Kobel's bar in the 86th minute, leaving supporters perplexed as to how the scoreline was still 1-0, and after staving off more toothless PSG attacks, Terzic's men took their seats in front of the yellow wall and rejoiced in earning a precious first-leg success.
Before reuniting at the Parc des Princes next Tuesday night, Dortmund have Bundesliga matters to attend to this weekend - hosting Augsburg on Saturday - while Enrique's men have no Ligue 1 game pencilled in and have six days to find solutions to their worrying profligacy.