Youngster Amadou Bakayoko's 42nd-minute effort proved the difference between the two sides, but United - who had two goals ruled out - should have rescued a point, only to see Sharp's spot-kick saved by Neil Etheridge.
Walsall nearly took a 10th-minute lead when Erhun Oztumer's superb free-kick bounced off the bar and away to safety.
United hit back with Leon Clarke narrowly nodding wide, before Jack O'Connell's header from Mark Duffy's corner was kept out by Etheridge and then the defender had an effort cleared off the line.
Etheridge got down low to save from Daniel Lafferty, before Walsall took the lead three minutes from the break.
Oztumer's superb ball over the top fell right into Bakayoko's path and as Simon Moore rushed out of his area, the youngster stabbed the ball past the United keeper into the empty net.
Walsall almost doubled their lead in the first few seconds of the second half, but Moore acrobatically kept out Oztumer's powerful strike.
O'Connell headed home only to see his effort ruled out and Lafferty flicked a volley just over as the Blades sought to get back on level terms.
Duffy almost caught Etheridge off guard with a quickly-taken free-kick, but the Philippines international managed to dive across in time and palm his effort wide.
United were handed a lifeline seven minutes from time, when substitute Caolan Lavery's shot was handled by a defender, but Sharp's tame penalty was easily saved by Etheridge.
And in stoppage time, United thought they had snatched a point when the ball was forced in after a goalmouth scramble, but it was ruled out for handball.