Marlon King's second-half penalty helped Birmingham to victory and condemned Bolton to their fourth away defeat of the season.
Leroy Lita scored on his home debut to give Blues the lead when he slid in to turn in Paul Caddis's cross.
Chris Eagles equalised for Bolton just before half-time when he curled in a free-kick from 30 yards.
Shortly after the restart, Birmingham regained the lead when King converted after Marcos Alonso had fouled him.
The St Andrew's club have lost just one of their last 26 league games on home soil.
They had other opportunities to score. Lita saw his header narrowly deflected wide of the near post, while Chris Burke forced a good save from Adam Bogdan.
In the second half, Bogdan made another great stop, this time from Caddis, before Lita fired wide after pouncing on a poor header from Zat Knight, who was making his 100th league appearance for the Trotters.
David Ngog had the ball in the net for Bolton, but his effort was flagged for offside.
Birmingham's victory, which moves them to eight points and above Bolton, was only tainted by the withdrawal of Caddis with a dislocated shoulder.