Dortmund, missing more than half a dozen players through injury including top scorer Erling Haaland, squandered a couple of golden early opportunities to captain Marco Reus but Thorgan Hazard did better in the 40th minute.
Jude Bellingham delivered a superb chip into the box and the Belgian timed his run to perfection to head home.
Bellingham has vastly increased his contribution to the Dortmund attack this season, delivering three assists to add to his two league goals.
Cologne put the ball in the net but the effort was ruled out due to a handball and the visitors forced keeper Gregor Kobel to make a last-gasp save from a long-range shot, with striker Anthony Modeste a constant threat.
Cologne had 19 efforts on goal compared to Dortmund's seven.
Steffen Tigges, however, added another for the hosts in the 64th, heading in a corner to give them a two-goal cushion with his first Bundesliga goal, much to the relief of the 67,000 fans in the stadium.
"Cologne made it really difficult for us to really get into the game," Dortmund coach Marco Rose said. "Cologne were the tam that set the pace. They were the better team with the ball and so we are very happy with this win."
"We have a lot of injury absences so a big compliment to the team that we have managed in this difficult phase to keep collecting points," Rose added.
With their fourth straight league win Dortmund, who host Ajax Amsterdam in the Champions League next week, matched the club record with six wins from their first six home games of the season and moved up to 24 points, one place behind Bayern who beat Union Berlin 5-2.