The visitors looked like holding on to the first-half lead provided by Lenell John-Lewis until Stephens' intervention at the death. Only a point-blank save by Cameron Belford kept out Leon Clarke's 15th-minute shot after the Charlton striker had been put clean through by Johnnie Jackson.
But despite defending deeply for long periods in the first half, Bury looked dangerous going forward and they almost went in front when Steven Schumacher's 40th minute free-kick was headed just over by John-Lewis. However, John-Lewis was not to be denied two minutes later when, after being set up by Ryan Doble, he drilled a powerful shot past Ben Hamer to give the visitors a shock advantage at the break.
Matt Taylor came close to restoring parity nine minutes into the second half but he headed over after Danny Green's corner had been flicked on by Michael Morrison.
Chris Solly's 74th-minute volley looked like it hit a the hand of a Bury defender but the penalty appeals were ignored by the referee.
However, Charlton's blushes were spared deep into stoppage time as Morrison's shot was pushed out by Belford to Stephens, who smashed an unstoppable effort home from just outside of the box to maintain the Addicks' unbeaten home run.