Tyreke Johnson gave Southampton a good start with an early goal but Nathan Ferguson headed a rapid equaliser.
Sam McQueen's long-range free-kick restored Southampton's lead in the 18th minute and Aaron O'Driscoll made it 3-1 just past the hour mark.
Callum Morton gave the Baggies hope with a 68th-minute penalty before Johnson rattled the visitors' bar late on.
Southampton are ninth in the Division 2 table while West Brom are bottom after their 11th defeat in 15 matches.
Southampton: 9 Feb v Cardiff (H) PL Cup
West Brom: 15 Feb v Sheff Utd (A) PL Cup