Federico Macheda's goals either side of half time have left Charlton Athletic in the Championship relegation zone.
The home side had a penalty shout turned down early on as Astrit Ajdarevic played in Reza Ghoochannejhad, who went down under Will Packwood's challenge, though the referee waved away Charlton calls.
The deadlock was broken courtesy of Macheda's goal, with the striker heading home a Emyr Huws's cross with 22 minutes on the clock.
Brum nearly doubled their lead shortly after, as Chris Burke was played through on goal, only for Yohann Thuram-Ulien to rush out and deny the Scottish winger with his feet.
Relegation-threatened Chalrton nearly pulled level through Jordan Cousins, who found himself one-on-one with the keeper but Darren Randolph came out on top to save the attempt.
Randolph was called into action once more shortly after, this time from a Johnnie Jackson strike which the visiting stopper had to push away.
The Addicks would rue the missed opportunities, as Macheda doubled his and Birmingham's tally for the afternoon with a little over 10 minutes remaining, slotting past Thuram-Ulien.
The Italian very nearly completed his hat-trick shortly after, though he was inches away from Burke's low ball across the face of goal.
No Data Analysis info