Southampton picked up back-to-back league losses for the first time since November — Norwich City and Liverpool by, coincidentally, the same two scorelines of 4-0 and 2-1 — but remained in 10th position on 35 points.
Armstrong gave Southampton the lead in the 16th minute when he was the benefactor of a deflected ball in the box, which allowed him to nod in from inside the six-yard box to make it 1-0.
Newcastle played little part drew level on 32 minutes though Wood, who scored his first goal for the club on his eighth appearance. Wood shook Mohammed Salisu with a crafty run and was left open in space for a thumping header that beat a flat footed Fraser Forster.
Che Adams came close to restoring Southampton’s lead five minutes later, but struck the underside of the bar with his volleyed effort.
Bruno Guimaraes broke the deadlock in the 52nd minute after Dan Burn headed a corner kick back across goal for the Brazilian to brilliantly flick the ball into the net from six yards.
Saints had two quality chances to salvage a point, but Martin Dubravka punched Tino Livramento’s attempt over the bar, before he denied Salisu from close range nearing full-time.
The full-time whistle meant Newcastle moved 10 points clear of the relegation zone and into 14th spot on 31 points from 27 games.
Southampton (4-4-2): Forster; Walker-Peters, Salisu, Bednarek, Livramento; Elyounoussi (Djenepo 86), Romeu (Long 79), Ward-Prowse, S. Armstrong; Broja (A. Armstrong 73), Adams
Unused subs: Caballero (GK), Stephens, Perraud, Smallbone, Diallo, Valery
Goals: S. Armstrong (25)
Bookings: Bednarek (72)
Newcastle United (4-3-3): Dubravka; Targett, Burn, Schar, Krafth (Manquillo 90+2); Guimaraes, Willock, Shelvey; Murphy, Fraser (Almiron 85), Wood
Unused subs: Darlow, Dummett, Lascelles, Ritchie, Gayle, Longstaff, De Bolle
Goals: Wood (32)
Bookings: Murphy (16), Guimaraes (52)