United dominated the first 15 minutes and had a couple of good chances to break the deadlock, the best of which fell to Lys Mousset.
Fleck’s corner was headed across goal by Jack O’Connell and Mousset, who looked to have been played onside by stand-in Arsenal skipper Alexandre Lacazette, looped his header on to the roof of the net.
The hosts gradually worked their way back into the game and Nicolas Pepe brought a spark down the Arsenal right-hand side. His cross picked out Gabriel Martinelli coming in from the left but the Brazilian missed the target with a volley.
Martinelli made up for that miss by breaking the deadlock right on half-time. Lacazette turned the ball round the corner to Saka, whose deflected cross from the left looped over Henderson and Martinelli was on hand to side-foot into an empty net from four yards out.
The visitors came agonisingly close to an equaliser on 56 minutes. Oliver Norwood’s corner was flapped out by Bernd Leno and Oli McBurnie’s header was cleared off the line by Granit Xhaka.
Despite the Blades deserving a point from their overall performance, Arsenal will point to a strange decision from VAR which denied them the chance to double their lead.
Pepe drifted past Enda Stevens before running at O’Connell, who hung out a leg and seemed to bring the Arsenal man down. Firstly, Mike Dean – making his 500th appearance as a referee – waved away the appeals and then VAR stuck with the original decision.
With seven minutes remaining, Chris Wilder’s men got their deserved equaliser. Callum Robinson’s cross from the right was flicked on by Billy Sharp to Fleck and the Scot’s volley into the ground flicked off the leg of Mustafi and into the far corner of the goal.
The result leaves the Blades seventh in the table, with Arsenal now 10th and five points outside the top six ahead of a big London derby at Chelsea on Tuesday night.