Southampton took a 17th-minute lead through a deft finish from Shane Long.
But Arsenal went into half-time ahead when Pierre-Emerick Aubameyang completed a neat move after a flick from Welbeck, who then fired in a deflected shot.
Southampton goalkeeper Alex McCarthy saved from Aubameyang, Granit Xhaka and Alex Iwobi before Charlie Austin equalised on 73 minutes from close range, 76 seconds after coming on as a substitute.
But moments after missing a great chance, Welbeck headed in at the back post with nine minutes to go.
In stoppage time Southampton's Jack Stephens, then Arsenal's Mohamed Elneny, were sent off for off-the-ball incidents.
Arsenal stay sixth while Southampton remain in the bottom three, three points from safety.
Arsenal: 15 April v Newcastle (A)
Southampton: 14 April v Chelsea (H)