Batshuayi joined Dortmund on loan from Chelsea on Wednesday afternoon, and the Belgium international was given his debut at the tip of the German side's attack.
Koln fought back on two separate occasions to level the scores in the second period, but Dortmund netted a third six minutes from time to secure all three points in the five-goal thriller.
Shinji Kagawa came close to sending the away side ahead in the 16th minute, but the former Manchester United midfielder saw his effort from outside the box hit the crossbar.
The on-loan Chelsea forward tapped another Toljan cross into the back of the net in the 44th minute, but this time the goal was disallowed for offside.
Koln were level on the hour when Simon Zoller headed home from close range. Dortmund needed just two minutes to regain the lead though as Batshuayi netted his second of the match when he slid the ball under Horn.
The hosts levelled the scores at 2-2 in the 69th minute when Jorge Mere headed a corner past Roman Burki, but Dortmund snatched all three points six minutes from time when Andre Schurrle found the back of the net following a powerful run.
The result has seen Dortmund jump from fifth into second position in the Bundesliga table, while Koln remain rooted to the foot of the division having suffered their 14th defeat of the 2017-18 campaign.
KOLN (4-4-2): Horn; Sorensen, Mere, Heintz, Hector; Jojic, Oszan, Hoger (Pizarro 87'), Clemens (Zoller 46'); Guirassy (Cordoba 63'), Terodde
DORTMUND (4-3-3): Burki; Piszczek, Sokratis, Toprak, Toljan; Dahoud (Guerreiro 63'), Weigl, Kagawa; Pulisic (Sancho 72'), Batshuayi, Schurrle (Akanji 88')