In an entertaining first half, Hoffenheim had enough chances to take the lead, but it was the hosts who broke the deadlock in the 43rd minute when Jamie Bynoe-Gittens found enough space down the left to feed Reus inside the box and the midfielder rifled a curling shot into the top corner.
Hoffenheim ended the game with 10 men after Ozan Kabak was sent off with a second booking in second-half stoppage time.
Dortmund have now won each of their three German Cup encounters against Hoffenheim.
Bundesliga leaders Bayer Leverkusen also advanced with a 5-2 win at Sandhausen.
Bundesliga club Freiburg crashed out of the competition after losing 3-1 at home to second-tier Paderborn.
Bayern Munich are in action later on Wednesday at third-tier Saarbrucken.