Novak swept home from close range early on before firing in a spectacular second and, after Chris Burke made the most of a defensive blunder just before half-time, it looked as though the game was over.
But Rovers fought back admirably and Jordan Rhodes struck two of his own, a close-range header and a delicate lob, but Birmingham held on to stretch their unbeaten run to nine.
It is only Blackburn’s second league defeat at Ewood in 11 matches and ends their own four-match unbeaten run.
Blackburn boss Gary Bowyer made two changes to the side that drew with Sheffield Wednesday.
Ruben Rochina and Lee Williamson were drafted in, while Lee Clark made one enforced change after drawing with Wigan – Andy Shinnie starting in place of the suspended Jesse Lingard.
Rochina, making his first start since the opening day of the season, missed a great chance to give Rovers an early lead.
A quick break saw Tom Cairney sprint down the right before teeing up the Spaniard just inside the area but he dragged his right-foot effort wide.
The Blues took the lead after 11 minutes when Kyle Bartley’s misdirected header found Dan Burn and he squared for the unmarked Novak to tap home.
And Novak scored again seven minutes later in sumptuous fashion. He picked the ball up 30 yards from goal and unleashed an unstoppable strike that flew past Simon Eastwood.
Rovers should have pulled one back after Cairney slipped in Rhodes whose shot cannoned off the near post.
But Birmingham punished some woeful Blackburn defending after 36 minutes.
Eastwood’s poor clearance fell straight to the feet of Burke, who engineered space 18 yards out before firing into the bottom corner.
Blackburn were looking to extend their unbeaten run to five matches and were handed a lifeline after 66 minutes when Ben Marshall chipped in a delightful cross for Rhodes to head home from close range.
The Blues almost had a fourth one minute later though when Burke’s inch-perfect pass allowed Shinnie to burst into the area but Eastwood was down quickly to save.
The comeback was well and truly on with 18 minutes remaining as Rhodes latched on to a long ball from Scott Dann and showed great poise and balance before delicately lifting the ball over Darren Randolph for his 15th goal of the season.
And they were inches away from grabbing a point in injury time through Dann’s header but it bounced off the post and Randolph claimed the loose ball as Birmingham held on.