The result meant Chris Wilder's Blades finished ninth in the standings, still their best ever finish in the Premier League. Southampton, who were in the relegation zone earlier this season, ended their campaign in 11th place.
"We have to up our game in the summer and we had run our race," Wilder told BBC after their third straight defeat. "It looked like a second half too far for the players.
"We've finished ninth against some really good teams which we can proud of but we wanted to finish on a high.
"We have to recruit right and we have to invest, there will be some players that are going and they will all have to raise their levels again."
John Lundstram fired the Blades into the lead in the 26th minute when the Southampton defence failed to clear a cross, allowing the midfielder to take an uncontested shot through the legs of Alex McCarthy.
But Southampton's Che Adams scored the equaliser five minutes after the restart against his former club when he took a quick shot on the run which took both defender John Egan and goalkeeper Dean Henderson by surprise.
Adams' quick reactions were on display again in the 71st minute when he was first to pounce on a blocked shot, pulling the trigger to fire a shot past Henderson to give the Saints the lead.
Southampton sealed all three points when they won a penalty in the 84th minute after Danny Ings was brought down in the box and the English striker stepped up to score his 22nd league goal this season.
"I saw a team in the second half that is really showing how every part of their game is developing," Saints manager Ralph Hasenhuettl said as his team finished the season with a seven-match unbeaten run.
"We had strong offensive moments and solutions against these teams is not easy, but we deserved this win today."