Saints came into the match rooted to the bottom of the standings after four successive defeats but secured three points on the south coast as their 30-year-old talisman Rickie Lambert scored twice and set up another.
Their miserable start to life back in the Premier League had looked set to continue after sloppy defending allowed Darren Bent to break the deadlock in the first half.
It was the 15th goal conceded by Nigel Adkins' side in just five top-flight matches but, for once, their inability to defend did not cost them.
Lambert drew the hosts level in the second half after firing home under pressure and the match turned on its head five minutes later.
Nathaniel Clyne slotted home from close range after latching on to a superb through ball from new boy Gaston Ramirez, before Jason Puncheon rattled home after collecting a pass from Lambert, who netted his second of the day from the spot in stoppage time.
The big talk pre-match was about Nigel Adkins' gutsy decision to drop club captain Kelvin Davis in favour of Premier League debutant Paulo Gazzaniga.
The 20-year-old Argentinian goalkeeper joined the south coast club from Gillingham in the summer and was one of three changes made after the 6-1 hiding at Arsenal last weekend.
Recent acquisitions Maya Yoshida and Ramirez were handed their first starts for the hosts, who were quickest to settle at St Mary's.
Puncheon saw a neat one-two that was just too strong for Ramirez, who then played through Lambert on the left flank only for the striker to blaze over unbalanced.
For all of Southampton's early pressure they were being reduced to long-range efforts, with former Villa midfielder Steven Davis and Ramirez both screwing wide from distance.
The visitors had not created the same opportunities but were looking dangerous whenever they attacked the hosts' new-look backline, with a late lunging tackle by Jose Fonte preventing Bent.
Going forward Adam Lallana was proving Southampton's most dangerous outlet and attempted an over-head kick during a penalty box melee on the half-hour mark.
That was caught comfortably by Brad Guzan, and when Villa broke, Stephen Ireland's deep cross was volleyed wide by Barry Bannan.
It was a warning shot that Saints failed to heed as Bent handed Villa a 36th-minute lead.
Saints failed to clear their lines as Ireland's mis-hit shot fell to the England international, who reacted quickly to ghost in between Yoshida and Danny Fox to tap home.
It was just reward for Villa as their tactics of frustrating the hosts and waiting for a mistake by their leaky defence paid dividends.
Ron Vlaar was booked as half-time approached for a trip before the break, where both sides made changes.
Ashley Westwood replaced Ireland for Villa, while Saints hauled off Fox and brought on right-back Frazer Richardson.
Clyne switched to the left as a result for Saints, who saw Puncheon test Guzan from an acute angle seconds after the restart.
Villa, though, were playing confidently with Bent forcing Gazzaniga into action at his near post after latching on to a nice through ball by Benteke.
The Belgium international was impressing on his first start and should have extended Villa's advantage in the 50th minute, meeting a Bannan corner with a powerful header that flew just over.
Eric Lichaj was booked for a late challenge on Morgan Schneiderlin as Southampton pushed for an equaliser, with referee Jon Moss waving away penalty appeals from Lambert at the resulting-free-kick, denying him a chance at levelling from the spot.
However, the 30-year-old would not be stopped for long as he expertly controlled a driven Lallana cross from the right and lashed home under pressure from four Villa defenders.
The 58th-minute leveller seemed to lift a weight off the Southampton players' shoulders as Lallana soon flashed a 25-yard effort just over, before Clyne then snuck in to put Saints ahead.
Having started the move, the defender burst into the box and collected an exquisite Ramirez ball to slot home from close range in the 63rd minute.
Clyne was booked in the aftermath as Villa introduced Gabby Agbonlahor and Joe Bennett in a bid to stem the flow, with the latter's first action seeing Puncheon cut past him and curl just wide.
The winger soon had the goal his performance deserved, though, collecting a pass from Lambert and showing good control before rifling home from the edge of the six-yard box.
Puncheon received a standing ovation from the majority of the 30,713 inside St Mary's when he was substituted, with replacement Emmanuel Mayuka curling inches wide in the 78th minute.
Mayuka saw a shot saved at the near post as the clock wound down before he was brought down in the box by Guzan in stoppage time.
The American received a booking for the challenge and Lambert slotted home the spot-kick to give Saints their first Premier League victory since defeating Norwich 4-3 in April 2005.