Substitute Gabriel Jesus scored in the dying embers of injury time in order to hand City three points on the road, leading the Sky Blues to become the first team to earn 100 points in an English top-flight season.
Victory for City also means that Pep Guardiola has achieved the century mark for points collected for the first time in his managerial career.
The defeat leaves Mark Hughes and his Saints side still sitting safe in 17th place after 38 games, while Swansea City proved to be the final side to be sent down to the Championship after losing 2-1 at home to already-relegated Stoke City elsewhere on Sunday.
Saints started with encouraging energy in the opening minutes and they might just have taken the lead when Wesley Hoedt made use of some slack zonal marking from City to head an effort straight against the crossbar with Claudio Bravo struggling.
Guardiola started with a forward three of Leroy Sane, Raheem Sterling and Bernardo Silva, although the trio were unable to make any early inroads as Saints held firm and defended with laudable pragmatism throughout the first period.
The Saints kept City at times in two minds as they showed promise of throwing men forward rather than sitting deep. The hosts almost profited when Hoedt was left free at the back post, but the defender could only lash into the side-netting.
Sterling was markedly quiet in the first half but he showed glimmers of promise just before the break, rolling the challenge of Yoshida cleverly only to spoon his resulting shot over the bar without testing Alex McCarthy.
Southampton appeared relatively relaxed at St Mary's and a bright end to the first period saw Oriol Romeu break into space on the edge of the City box, leaving the midfielder to drive just over the goal frame.
City were improved after the break and they should have opened the scoring when the ball fell kindly to Fernandinho inside the box, but the unmarked Brazilian could only blaze over the bar after opting to hit the ball first time.
The Sky Blues soon taken control inside the Saints half and they spurned two standout chances with just over 30 minutes to play. First Sterling saw his deflected shot come back off the post, before McCarthy did well to backpedal and tip a John Stones header over the bar from the resulting corner.
City switched to a back three as they went in search of a winner, leaving space on the left flank for Dusan Tadic, who produced a delightful cross for substitute James Ward-Prowse, leaving the youngster's header to be kept out by a diving Bravo.
Southampton might just have pinched a shock win in the closing stages, only for Fernandinho to make a crucial block on the line to deny Tadic, whose clever run had left both Danilo and keeper Bravo all at sea.
It had looked like both sides were to be made to settle for a point, but substitute Jesus latched on to a delightful long ball from Kevin De Bruyne in the final minute of stoppage time, allowing the Brazilian to lob McCarthy and see City break England's top-flight points record.
SOUTHAMPTON (3-4-3): McCarthy; Hoedt, Yoshida, Stephens; Cedric, Bertrand (McQueen 81'), Romeu, Hojberg; Tadic, Austin (Long 64'), Redmond (Ward-Prowse 64')
MANCHESTER CITY (4-3-3): Bravo; Danilo, Stones, Laporte, Delph (Jesus 59'); Fernandinho, Gundogan (Foden 82'), De Bruyne; Bernardo (Diaz 78'), Sane, Sterling