- Kevin Stöger (64' Pen)
- Emre Can (45'+1')
- Marco Reus (70')
Dortmund, who face Chelsea in the Champions League Round of 16 next week, have now won all five matches they have played this year, including their four league games.
They had the upper hand in the first half but came up against a disciplined Bochum backline.
Dortmund needed a bit of luck to open the scoring as Riemann charged out of the box to clear with the ball landing at the feet of Dortmund's Emre Can on the halfway line.
Can took a chance with a shot from 50 metres out and the ball rolled into goal before Riemann could scramble back in first-half stoppage time.
Bochum were the better side after the break and earned a 64th-minute penalty following a lengthy VAR review for a hand ball and Kevin Stoeger sent keeper Gregor Kobel the wrong way to level.
Reus, who came on as a substitute in the 67th, tapped in the winner three minutes later after Jude Bellingham had charged through and laid the ball off for his captain in the box.
- Tobias Stieler