Harrison Burke provided the winner for Walsall in the 37th-minute after applying a delightful flick beyond the reach of substitute goalkeeper Filip Marschall from Jamie Jellis' low drive.
Romaine Sawyers, who made 161 appearances for the Saddlers between 2013 and 2016, was also introduced as a trialist in the second half.
Walsall started brightly and had the first chance within the opening 60 seconds when Aaron Pressley headed over from Mason Hancock's clipped cross.
Joe Gauci gifted Walsall another opening shortly after with a sloppy pass, but the Villa goalkeeper atoned for his error by keeping out Charlie Lakin's low drive.
The hosts came close again midway into the first half when Burke towered above his marker to nod Jellis' floated free-kick delivery inches over the crossbar.

Romaine Sawyers is on trial with former club Walsall and played in the second half.
Former Villa man Albert Adomah had attempted an audacious lob just moments before, but his effort from halfway sailed harmlessly into Gauci's grasp.
Summer signing Burke gave Walsall a deserved lead seven minutes before the break with his first goal for the club.
Barrett latched on to a sumptuous flick by Hancock before driving a low cross into the penalty area. Villa only partially cleared their lines and Jellis' fizzing effort was cleverly flicked into the far bottom corner by Burke.

Summer signing Mason Hancock impressed for Walsall again.
Villa fielded an entirely new set of outfielders for the second half and Charlie Pavey came close to a leveller when he glanced his diving header off target.
Walsall made nine changes just past the hour mark, including the introduction Sawyers and another trialist.
Courtney Clarke came close to doubling the Saddlers' lead minutes when he broke in behind his marker and sent a fizzing effort wide of Marschall's right-hand post.
The Villains had two chances in quick succession to get back on level terms. Sam Hornby produced an excellent save to turn behind Lewis Dobbin's powerful finish and Pavey dinked another effort into the side netting after latching on to a fine pass by Boubacar Kamara.
Yacin Ozcan had another late chance for Villa but slammed his effort from distance into the side netting.
**Teams**
**Walsall (3-1-4-2):** Roberts (Hornby 62); Burke, Okagbue, Browne (Weir 62); Comley (Sawyers 62); Barrett (Clarke 62), Jellis (Maher 62), Lakin (Trialist A 62), Hancock (Harper 62); Adomah (c) (Stuttle 62), Pressley (Gordon 62).
**Not used:** None
**Villa First Half XI:** Gauci (Marschall 30), Rowe, Mosquera, Torres, Moreno, Bogarde, Barkley, Young, Jimoh-Aloba, Ramsey (c), Barry.
**Villa Second Half XI:** Marschall, Garcia, Carroll, Mings, Ozcan, Kamara, Hemmings, Burrows, Pavey, Patterson, Dobbin.
**Not used:** Proctor.
Referee:
Attendance: 9,500