Cologne were crushed 5-0 by Dortmund earlier in the season but there was little sign that a repeat was on the cards when Milivoje Novakovic headed the hosts ahead after 13 minutes.
Ilkay Gundogan, Kagawa and Ivan Perisic added three more in the last 15 minutes as Cologne capitulated in shambolic fashion.
Cologne dropped to 14th with 28 points, only one ahead of Hamburg SV in the relegation playoff spot and two clear of Hertha Berlin in the drop zone.
Cologne's shell-shocked players were as baffled by anyone at their second-half collapse.
"We had a chance at halftime but once they made it 3-1, they gave them more room and the played good football," said Sascha Riether. "We have to apologise for our second-half performance."
The hosts made a bright start and went ahead when Novakovic beat two defenders to Martin Lanig's cross to score with a looping header.
Cologne, however, gifted Dortmund an equaliser when Piszczek was allowed to rise unmarked at the near post to head in Marcel Schmelzer's free kick from near the corner flag.
Kagawa fired Dortmund ahead with a spectacular volley at the far post two minutes after the re-start and the Japanese was also involved in the third goal five minutes later.
Kagawa's clever backheel allowed Jakub Blaszczykowski to burst into the area and he laid the ball off for his fellow Pole Lewandowski to convert his 17th goal of the season.
The last quarter of an hour were embarrassing for Stale Solbakken's side who capitulated meekly.
Following a mistake in the Cologne midfield, Kagawa was again the provider in the 79th minute as he left Gundogan was left with the simple job of tapping the ball into the net.
In the next attack, Piszczek crossed from the right and Kagawa beat team mate Lewandowski to the ball -- the only other player near him -- to sidefoot home from close range for his 11th goal of the season.
Perisic completed the rout after Dortmund again sliced through the Cologne defence as if it was not there.