James had sent United ahead in the 10th minute with his third Premier League goal of the campaign, but the Saints levelled through Vestergaard just before the hour as the points were shared on the south coast.
The result means that the Red Devils have won just one of their four league fixtures this season to sit fourth on five points, while Southampton remain 13th with four points from the same number of games.
Southampton adopted a high-press from the outset, forcing United to either look long or take the chance of playing through midfield, which created an entertaining start to the contest.
The home side came close to taking the lead in the eighth minute when Sofiane Boufal found space outside the box before looking to pick out the bottom corner, only to just miss the far post.
Instead, it was United that made the breakthrough in the 10th minute when James worked his way into the penalty box before thumping an unstoppable strike into the top corner.
It was James's third Premier League goal of the campaign, and the Wales international almost netted another from a powerful strike in the 22nd minute, only for Saints stopper Angus Gunn to make a smart stop.
Southampton were having their moments in the final third, although they were guilty of conceding possession too easily on a number of occasions, which saw United's confidence continue to grow.
Juan Mata was perhaps the player making the biggest difference to the Red Devils, though, and the Spaniard missed the post with a low effort just past the 30-minute mark.
Danny Ings fired one wide of the United goal in the 35th minute as the home side looked to give their vocal home supporters something to cheer before the half-time interval.
Rashford had two half-chances in the early stages of the second half, although neither came to anything as Southampton managed to survive shipping a second during a key period of the game.
Adams had a golden chance to level the scores in the 55th minute after being fed inside the United box - the summer arrival got his contact all wrong, though, and fired wide of the target.
Southampton did equalise in the 58th minute, however, when Vestergaard climbed highest inside the United box to head a Kevin Danso cross into the back of the net.
De Gea had managed to keep out a header from Ings moments before but could do nothing from the next attempt as Vestergaard towered over Victor Lindelof inside the area.
Pierre-Emile Hojbjerg then struck over the United crossbar from distance in the period that followed, which prompted a double change for the visitors - both Jesse Lingard and Nemanja Matic entering the field.
Southampton were reduced to 10 men shortly after when Danso picked up a second yellow card for bringing Scott McTominay to the ground with a rash challenge.
Gunn had to keep out a strike from James 15 minutes from time, with United looking to win for the first time since the opening weekend of the 2019-20 campaign.
Rashford brought a decent save from Gunn in the 83rd minute before Lingard curled wide during a spell where United were forcing the issue.
Greenwood was next to come close as he forced Gunn into a save from a curling strike, moments before Ashley Young just missed the post from distance. It was not to be for Solskjaer's side, though, as the points were shared on the south coast, making it another unhappy day for the Red Devils.
SOUTHAMPTON (4-3-3): Gunn; Soares, Vestergaard, Bednarek, Danso; Romeu, Hojbjerg, Ward-Prowse; Boufal (Armstrong 71'), Ings (Yoshida 77'), Adams (Long 62')
MANCHESTER UNITED (4-2-3-1): De Gea; Wan-Bissaka, Lindelof, Maguire, Young; Pogba, McTominay (Greenwood 82'); James, Mata (Matic 68'), Andreas (Lingard 68'); Rashford