The visitors were up against it after just 21 minutes when Kieran Richardson was shown a straight red card for a studs-up tackle on Stephane Sessegnon.
The dismissal forced Villa on to the back foot and their resistance was finally broken in the 72nd minute following the introduction of Saido Berahino.
Just minutes after coming on, Berahino put in a dangerous cross from the right that Brad Guzan couldn’t clear and the ball fell for Gardner – a former Villa player and Birmingham City fan – to fire home.
Christian Benteke wasted Villa’s best chance to equalise in the dying stages when he shot wide, but in the end it was a deserved and important victory for West Brom.
Certainly the importance of Gardner’s goal was clear on the touchline as Baggies boss Alan Irvine pumped his fists in celebration at the strike.
Irvine has been under pressure in recent weeks following the disappointing run but was positive with his team selection as he handed starts to Silvestre Varela and Brown Ideye.
Villa made one enforced change from their win over Leicester City, with the injured Ashley Westwood replaced by Richardson.
Neither side offered much of a goal threat in the early stages, although most of West Brom’s best moments came down the left.
Sebastien Pocognoli forced Guzan into a save from a tight angle after he stepped inside Alan Hutton, while Valera also beat the full-back but saw his dangerous cross into the six-yard box cleared.
With 20 minutes gone there looked to be little between the sides, but Richardson then did the Baggies a huge favour when he went lunging in on Sessegnon and was dismissed.
The former Baggie was always chasing the ball after a heavy touch and Mike Dean had little choice but to show him a straight red for the studs-up tackle.
But the Baggies were unable to make the most of their numerical advantage before the break and didn’t test Guzan until the 41st minute, when Sessegnon had a shot that the keeper saved with his legs.
After the interval it was a different story as West Brom dominated possession and started to threaten more regularly.
Varela saw a close-range volley blocked before Ideye missed a header and then blazed over the bar from eight yards out when he should have at least hit the target.
Villa were seeing little of the ball but it looked as though they might hold out until Gardner finally broke the deadlock in the 72nd minute.
Berahino, who had only come on a few minutes earlier, put in a dangerous cross from the right that Guzan didn’t deal with properly. The ball fell to Sessegnon and although his shot was blocked, Gardner made no mistake with the follow-up as he fired into the bottom corner.
It was no more than West Brom deserved for their second-half dominance, but Villa almost snatched a draw after a couple of late openings.
First, Benteke flicked a shot past the far post in the 80th minute, before the Belgian sliced wide from the edge of the area after a knock down from Gabriel Agbonlahor in stoppage time.
That was to be the last chance for Villa as the Baggies held on to secure a vital victory.
Soccer Saturday verdict – Matt Le Tissier
“From what I saw today I think these two sides will probably be looking over their shoulders come the last few games of the season. I don’t see them being that far clear of the relegation zone come the last few weeks.”
West Brom: Foster (6), Lescott (6), McAuley (6), Pocognoli (5), Wisdom (7), Dorrans (5), Gardner (7), Morrison (6), Varela (7), Ideye (5), Sessegnon (7).
Subs: Berahino (7).
Aston Villa: Guzan (5), Cissokho (6), Clark (6), Hutton (5), Okore (6), Cleverley (5), Richardson (4), Sanchez (6), Agbonlahor (6), Benteke (5), N’Zogbia (5).
Subs: Vlaar (5), Delph (6), Weimann (5).
Man of the match: Craig Gardner.