Villa broke the deadlock through Stephen Warnock after 61 minutes but were rocked by two goals in two minutes from Martin Petrov, with a penalty, and David Ngog.
The Trotters climbed above Blackburn into 18th spot, three points behind Villa but with a match in hand.
Angry Villa fans called for McLeish to be sacked during the final stages of the game.
Defeat means it is officially Villa’s worst home season in their history with only four wins and just one win in their last 13 league games.
Bolton survived a first half onslaught, with defender Tim Ram impressing, and looked more of a threat after the break with Mark Davies influential in midfield.
Villa, with five academy products in their side, made a positive start and could have gone ahead inside the first minute after Charles N’Zogbia’s centre was headed over by Chris Herd.
Bolton came more into the game and Nathan Baker blocked a shot from Chris Eagles after he exchanged passes with Ryo Miyaichi.
Villa striker Emile Heskey looked menacing and forced Bogdan to save away to his left with a shot on the turn.
The game turned sinister for a moment when Bolton boss Owen Coyle and Villa coach Kevin MacDonald had to be kept apart by fourth official Craig Pawson after Miyaichi was bundled into touch but the home side were soon back on the offensive and Heskey stung the palms of Bogdan after more good play.
N’Zogbia had another chance but his effort clipped the outside of the post from a 30 yard free-kick.
Villa ‘keeper Given had to be alert to parry away a dipping 35 yard free-kick from Eagles on the resumption but Warnock broke the deadlock on 61 minutes when he turned home a right wing cross from N’Zogbia.
Bolton retaliated and stunned the home side by netting twice in two minutes to go in front.
First, Petrov levelled from the penalty spot within 60 seconds, after Carlos Cuellar was adjudged to have brought down Mark Davies.
Then Eagles had the time and space to pick out Ngog who made no mistake from eight yards out.
N’Zogbia shot high and wide and a dangerous cross from the winger eluded everyone as Bolton coped quite comfortably in the final 20 minutes.
ASTON VILLA: Given, Hutton, Cuellar, Baker, Lichaj, Albrighton (Bannan 77), Herd (Delfouneso 88), Warnock, N’Zogbia, Heskey (Agbonlahor 70), Weimann.
BOLTON: Bogdan, Steinsson, Ream, Wheater, Ricketts, Miyaichi (Kevin Davies 46), Reo-Coker, Mark Davies, Petrov, Eagles (Alonso 86), Ngog (Klasnic 72).
Referee: Chris Foy (Merseyside).