The U's had midfielder George Porter sent off after four minutes and Craig Fagan gave Bury a 26th-minute lead.
Yet fellow strugglers Colchester stunned the hosts with two goals in as many minutes from Josh Thompson and Clinton Morrison. And although Bury laid siege on the visitors' goal in the second half, they could not avoid a third straight defeat.
It had started so well for the Shakers, with Porter shown a red card after clashing with Mark Carrington.
Fagan then fired over after being put clean through but the striker made amends shortly after, firing in from Steve Schumacher's left-wing cross.
The visitors levelled after half an hour when centre-back Josh Thompson headed home from Billy Clifford's corner, and moments later Morrison curled in from inside the Bury box.
Andy Bishop's flick was saved by Sam Walker as the hosts pushed for an equaliser and, moments after the break, Schumacher volleyed wide from close range.
Nicky Ajose's goalbound strike was then blocked by team-mate Bishop before Dave Worrall volleyed over from Ajose's cross.
Schumacher's fierce free-kick tested Walker although Bury keeper Trevor Carson had to deny Michael Smith on the break.
Bishop then headed Craig Jones' corner against the crossbar while Walker blocked a header from team-mate David Wright before turning Ajose's follow-up onto the bar. And Walker produced another fine save to deny substitute Jonson Clarke-Harris and secure Colchester's first win in four.