Garry Thompson gave the Bantams - who meet Premier League side Swansea City in next week’s Capital One Cup final at Wembley - the lead in the 59th minute.
Jack Midson levelled for the Dons on 83 minutes.
And Wimbledon then went and stole the three points in the last minute with a close-range header from Gary Alexander.
The result leaves Phil Parkinson’s side in 11th place.
AFC Wimbledon: Sullivan, Meades, Bennett, Mitchel-King, Hussey, Ajala, Peter Sweeney, Sammy Moore, Pell, Yussuff, Alexander. Subs: Jaimez-Ruiz, Cummings, Balkestein, Long, Midson, Sainte-Luce, Strutton.
Bradford: Duke, Darby, Davies, Nelson, Dickson, Atkinson, Gary Jones, Doyle, Reid, Gray, Thompson. Subs: McLaughlin, Hanson, McHugh, Hines, Wells, Turgott, Good.
Referee: Steve Bratt (W Midlands)