The Italian international struck twice in the first half at Britannia Stadium, netting his first goals in more than four months to lift Ronald Koeman's side up to seventh in the Barclays Premier League table.
Saints should have put the game out of sight during a sensational opening 45 minutes, and they had to endure a nervous second half, as Marko Arnautović struck shortly after the break to halve their lead, while they had Sadio Mané controversially sent off in added time.
However, they did hold on, as they moved above both their opponents and Liverpool to re-energise their European bid.
Ronald Koeman made two changes from the side that drew 1-1 at home with Sunderland last week, with one of those switches enforced, as Matt Targett came in for José Fonte, with the captain serving a one-match ban for his dismissal against the Black Cats.
The Saints boss also dropped Sadio Mané to the bench, bringing Shane Long back into the side after he had missed the Sunderland clash with a knee injury.
Koeman started with a 4-4-2 formation, with Ryan Bertrand alongside Virgil van Dijk at centre-half, while Targett operated at left-back. Steven Davis was handed the captain’s armband in Fonte’s absence.
While Saints had Long back, Stoke were also boosted with the return of centre-back and captain Ryan Shawcross, who was restored to their side for the first time since late January after overcoming a back problem.
Saints were superb in the first half and went close in the tenth minute, when Long checked onto his right foot out on the left wing and whipped in a cross. Pellè met it with a looping header, only to see Jack Butland scramble back to tip the ball over the bar.
Pellè put his hands to his head, but his frustration would prove short-lived, as he met Davis’s resulting corner with a brilliant near-post header that flew past the Stoke keeper to give Saints the lead.
Having ended a goal drought that had lasted since the 2-0 home win over Bournemouth on 1st November last year, Pellè immediately raced to the touchline to celebrate with the Saints coaching staff and his teammates.
It was nearly 2-0 moments later, as Cuco Martina produced an inch-perfect pass down the inside-right channel to send Long racing in behind, but his angled drive was beaten away well by Butland.
Still Saints pressed, and their endeavours were duly rewarded with another goal from Pellè, on the half-hour mark.
The striker chased a loose ball out to the touchline, then turned and played it inside to Dušan Tadić on the corner of the box. Pellè then broke into the area, received the ball back from his teammate and curled a low shot into the far corner, although Butland will be disappointed with his efforts at an attempted save.
The goal prompted Stoke boss Mark Hughes into withdrawing Xherdan Shaqiri for Bojan, but still Saints dominated, and Oriol Romeu went close to making it 3-0 in the 37th minute, with a fierce left-footed strike from distance that whistled just past the top corner.
Saints should have added a third in stoppage time at the end of the half, as Long broke away again down the right and squared for Tadić. He feinted back onto his right foot, fooling Butland and last-man Shawcross, to completely open up the far half of the net.
However, rather than shoot with his right foot, Tadić moved it back onto his left, giving Philipp Wollscheid just enough time to get back and save a certain goal with a sliding tackle.
Neither side made any changes after re-emerging from the break, and the second half began with an early booking for Jordy Clasie, after he brought down Glenn Whelan.
Stoke then grabbed a lifeline in the 52nd minute, when Marko Arnautović got in front of van Dijk at the near post to meet Afellay’s low ball and flick a right-footed effort past Fraser Forster and into the roof of the net.
With the score 2-1, the home crowd were suddenly energised, although on the pitch Erik Pieters showed a little too much enthusiasm, going through Davis and earning a yellow card.
Forster had to make a good diving stop in the 58th minute to turn away Arnautović’s shot across goal, after he turned on the edge of the area, while Afellay later sent a long-range effort over, as Stoke pushed for the equaliser.
They so nearly got it in the 65th minute, as Geoff Cameron’s low ball from the right picked out Mame Diouf in space inside the area. He took a touch to set himself, but van Dijk threw himself in the way to make a brilliant block.
After Koeman made his first change, sending on James Ward-Prowse for Clasie, Saints ahad a big appeal for a penalty turned down, as Tadić burst between two defenders, knocked the ball past Butland and went down under the keeper’s challenge. However, after a few seconds of deliberation, referee Lee Mason only gave a goal kick, leaving Tadić incensed.
It proved to be the midfielder’s last action, as he was withdrawn for Sadio Mané with 15 minutes left, with Maya Yoshida then being sent on for Targett with ten minutes remaining. Stoke threw on ex-Saints striker Peter Crouch themselves, as they sought an elusive second goal.
Ward-Prowse nearly wrapped the game up in the 88th minute, with a superb curling free-kick from 25 yards, but the ball thumped back off the crossbar.
Saints would end the game with ten men, after Mason sent off Mané at the start of added time in what appeared a strange decision, after a clash of heads with Pieters, but Koeman's men held firm to close out the game.
Stoke City (4-2-3-1): Jack Butland; Geoff Cameron, Ryan Shawcross, Philipp Wollscheid, Erik Pieters (Jonathan Walters 90); Glenn Whelan (Peter Crouch 78), Giannelli Imbula; Xherdan Shaqiri (Bojan 31), Ibrahim Afellay, Marko Arnautović; Mame Diouf. Unused substitutes: Jakob Haugaard, Marc Muniesa, Stephen Ireland, Joselu, Jonathan Walters.
Goals: Arnautović 52.
Southampton (4-4-2): Fraser Forster; Cuco Martina, Virgil van Dijk, Ryan Bertrand, Matt Targett (Maya Yoshida 80); Steven Davis, Jordy Clasie (James Ward-Prowse 69), Oriol Romeu, Dušan Tadić (Sadio Mané 75); Shane Long, Graziano Pellè. Unused substitutes: Maarten Stekelenburg, Cédric, Harrison Reed, Juanmi.
Booked: Clasie, Davis.
Sent off: Mané.
Goals: Pellè 11, 30.
Referee: Lee Mason.
Attendance: 27,833 (1,651 away fans).