Birmingham 0-1 Cardiff
Joe Mason struck just before half-time as Cardiff extended their lead at the top of the Championship to seven points with victory at Birmingham.
The hosts made the Bluebirds battle for the win as they pressed the league leaders throughout.
But Mason pounced on a mistake by home goalkeeper Jack Butland, who was unable to secure Craig Conway's shot.
The goal came against the run of play and Craig Bellamy's inspired performance helped Cardiff hold on.
Mason, who had been recalled to the starting line-up, scored for the fifth time this season when he capitalised on Butland deflecting Conway's shot into his path.
The absences of Marlon King, Nikola Zigic and Peter Lovenkrands did nothing to help the home cause, while Hayden Mullins withdrew in the warm-up, but Birmingham still made life difficult for the Bluebirds.
Despite looking the more threatening in the opening period, Birmingham could not create a clear-cut chance as Cardiff completed a rare double over them - the last was 46 years ago.
And when Cardiff's chance came, Mason took it to give them a fourth festive period win amid nine triumphs in their last 11 encounters.
The omens are now good for Cardiff to make the Premier League for the first time - each team that has led the Championship at this stage has reached the top flight.
The Blues, meanwhile, have two wins from their last 11 as they battle to stay clear of the relegation places only four points below them.
Ravel Morrison was a regular threat for the home side while Robert Hall and Nathan Redmond also troubled the Cardiff defence.
But Birmingham's plight was summed up when Mullins' stand-in, Callum Reilly, was forced off and replaced by Morgaro Gomis.
Cardiff's killer instinct came to the fore as Mason tapped home, a score that spurred their efforts after the break.
Bellamy came close to adding another and his influence was enough to help Cardiff stay in charge.
Substitute Rudy Gestede and skipper Mark Hudson headed over late on while David Marshall was steadfast in Cardiff's goal amid Birmingham's late bid to equalise.
Cardiff boss Malky Mackay said: "It was a tough team we played and we knew we had to battle and fight for everything we got.
"We are now seven points clear at the top, but it is just about making sure about the game you are in and keep chalking them off.
"It has been a tough period but we have the momentum and consistency which I am delighted about.
"We were without Andrew Taylor, who fell ill on the morning of the game. Simon Lappin came in and did a good job.
"To come away with the 10th clean sheet for the season was outstanding and we were very comfortable in the second half."
Birmingham City manager Lee Clark said: "Without a doubt we deserved something from the game. The goal we gave away was very unfortunate.
"Jack Butland saves the shot but then the ball hit him on the back of the head and then on the back of the heel and rolls straight to Joe Mason to tap it in.
"We played some excellent football. It is horrible because we are in a business where picking up is vitally important but all the performances collectively was very good against a team which is going to get promoted."