Villa had the best opportunity of the first half after persistent play from Kieran Richardson gave Gabriel Agbonlahor the opportunity to score into an open goal from six yards out, but the striker could not apply the finish.
Charles N’Zogbia’s deflected effort almost made it past a sprawling Asmir Begovic, while Stoke’s Phil Bardsley tested Brad Guzan with a curling effort that the American could only parry away.
With chances few and far between in the first half, it took just five second-half minutes for Villa to break the deadlock after Weimann drilled an effort past a stretching Begovic, who could only parry it into the net.
Despite the inclusion of new signings Mame Diouf and Bojan Krkic, Stoke struggled in the final third while Villa defended resolutely to secure a hard-earned three points.
Villa had not won away from home since January 1 and their six league games on the road previous to this had all ended in defeat in a poor conclusion to 2013/14.
Stoke, on the other hand, had finished the campaign strongly, and lost only three times in the league at the Britannia Stadium over the whole season.
There were three summer signings making their competitive debuts in each starting line-up, forward Bojan, Diouf and full-back Bardsley being the trio for Stoke, for whom newest arrival Victor Moses – whose loan move from Chelsea was confirmed earlier on Saturday – was not eligible to be involved.
The Villa bows were for wide man Richardson and defensive pair Philippe Senderos and Aly Cissokho, joined at the back by Alan Hutton, making his first competitive appearance of manager Paul Lambert’s tenure after two seasons of being frozen out.
Winger N’Zogbia, having missed all of last term through injury, was also back in the first XI and striker Darren Bent – another previously exiled under Lambert – was among the substitutes.
Stoke made a positive start to the contest, with Villa goalkeeper Guzan collecting a shot from Steven Nzonzi, seeing a Marko Arnautovic strike sail over and surviving a couple of hairy moments when Diouf tried to charge him down.
Bojan looked eager to build on the good impression he made in pre-season by scoring three goals for his new club, and he created the clearest chance yet when he cut into the area and fired wide in the 13th minute.
Villa had shown little attacking impetus, but they had a great chance to open the scoring in the 25th minute when Begovic and Stoke defender Marc Wilson got into a mix-up.
The resultant loose ball was crossed into the danger zone by Richardson to Agbonlahor, who seemingly had the goal at his mercy but – perhaps put off by the presence of Ryan Shawcross – scuffed his shot wide.
At the other end, Bardsley’s low shot was parried by Guzan, with Bojan unable to follow up, before N’Zogbia cracked a fierce effort goalwards which had the sting taken out of it by a deflection.
Minutes into the second half, the ball broke off Erik Pieters to Weimann, who took a poor first touch. But it came back to him via a combination of Wilson and Stephen Ireland, and the Austria international hit a shot which squeezed in off Begovic.
Stoke sought an immediate response and Ron Vlaar did well to get in the way of a Bojan strike.
Arnautovic arrowed a shot wide soon after but it was just not happening for the home side, and Villa might have added another goal in the 87th minute, Leandro Bacuna shooting well off-target when he really should have done better.
Stoke fans held their breath in the dying seconds as Arnautovic turned and shot in the box, but Senderos was there with the block to ensure Villa held out for the win.
CHARLIE NICHOLAS’ VIEW:
In the second part of the first half, Aston Villa were excellent and really started to dominate the game. It was more than deserved that they should score. There’s more experience now, the back four were excellent today and the shape was much better – but remember Aston Villa beat Arsenal at the Emirates at the same time last season and it was still an almighty struggle. Stoke did a bit better when Crouch came on, but other than that didn’t really create very much.