Joe Aribo put the Saints ahead following a lacklustre first half at St Mary's, but Frank Lampard's visitors hit back instantly, with Coady and McNeil scoring in the space of three second-half minutes.
It helped the Toffees extend their unbeaten run to six matches and provided a rare success on the road, a victory at Leicester having been Everton's only previous away win in the top flight this calendar year.
Home manager Ralph Hasenhuttl had read the riot act to his players after defeat at Aston Villa two weeks ago and as a result made six changes.
Juan Larios, Duje Caleta-Car and Ainsley Maitland-Niles were given full debuts and the hosts almost made the perfect start.
Sekou Mara created an opportunity for Che Adams in the sixth minute, but the Scotland international could only send his effort into the side-netting from a tight angle.
It was one of the few chances of a forgetful first 45 minutes, in which Everton largely controlled proceedings, only for Coady to squander their best opening midway through the half when he failed to get a clean connection to a Demarai Gray cross.
While the opening period will not live long in the memory, the first nine minutes after the interval made up for it.
Saints broke the deadlock in the 49th minute when Adams found Aribo inside the area and the ex-Rangers midfielder turned neatly before rifling a shot into the bottom corner.
But the celebrations from the home supporters were cut short when Everton levelled in rapid fashion.
Another Gray delivery caused problems and Amadou Onana impressively headed his free-kick back across goal for Coady to volley in and open his account for the Toffees in the 51st minute.
The end-to-end nature of the contest continued, with Saints wasting three chances to retake the lead in one passage of play that finished with the visitors going in front.
Adams, Stuart Armstrong and James Ward-Prowse were all denied by last-ditch tackles from the likes of James Tarkowski and Vitaliy Mykolenko, which proved vital for Everton.
Lampard's side went straight up the other end and it was McNeil who this time grabbed his first goal for the club.
Alex Iwobi's cross had been intended for Onana, but he received a shove from Kyle Walker-Peters that allowed the ball to run through for McNeil, who took a touch before drilling the ball high into the roof of the net in the 54th minute.
Onana wasted a chance to make it 3-1 soon after when he headed wide from Seamus Coleman's cross and by this point Hasenhuttl had seen enough.
Romain Perraud, Samuel Edozie and Adam Armstrong were introduced by the Saints boss, who was aiming to avoid a third consecutive defeat.
Adam Armstrong was straight into the action, setting up Adams for a volley that went wide before the substitute tested Jordan Pickford from 12 yards in the 72nd minute.
Pickford, back for Everton after missing England duty with a thigh injury, was required again to deny Walker-Peters and impressively dealt with a barrage of late balls into his area to help the Toffees taste success on the road for only a second time in 2022.