Albion could have been well in control of affairs by half time, but some poor finishing, and a world-class save by the Charlton goalkeeper Dean Kiely, frustrated them.
Jason Koumas and Jason Roberts both went close in the opening seven minutes for Albion, but the match only really came to life in the final third of the opening period.
While Albion dominated in terms of possession, Charlton almost broke the deadlock against the run of play when a powerful free-kick from Claus Jensen was cleared over the bar by Albion central defender Sean Gregan in the 27th minute.
That let-off sparked Albion into their best spell of the half and only Kiely's wonder save after 36 minutes prevented them taking a deserved lead.
Adam Chambers lifted over a cross from the right wing and Ronnie Wallwork's close-range header seemed certain to hand Albion the breakthrough.
But Kiely somehow managed to get a hand on to the ball and he deflected Wallwork's header up into the air before pouncing on the rebound.
Albion central defender Darren Moore then failed to hit the target with a close-range header before Koumas again saw his shot drift just wide.
When Koumas saw his 55th minute free-kick dip just the wrong side of the bar it seemed to be only a matter of time before Albion would gain their reward.
But they were stunned four minutes later when Charlton made their decisive breakthrough against the run of play through Bartlett.
After Albion central defender Phil Gilchrist was adjudged to have fouled Jason Euell, Jensen sent the resulting free-kick into the area.
Bartlett rose above the Albion defence, but his header still needed a huge deflection to find its way past the flat-footed goalkeeper Russell Hoult.
Albion's dismal evening was then summed up six minutes from time when Gregan's hopeful cross beat Kiely only to crash to safety off the post.