In the first half John Egan headed over for the hosts, while Hammers forward Felipe Anderson side-footed wide at the other end.
But West Ham lost Lukasz Fabiaski to a 14th-minute injury and his replacement, David Martin, made an error that led to the only goal.
His intended pass to Fabian Balbuena eight minutes after half-time was intercepted by John Fleck and the midfielder set up McBurnie to finish.
John Lundstram also had a shot blocked after a brilliant flowing move, while substitute Lys Mousset's shot was saved by Martin.
West Ham twice thought they had equalised late on but Sebastien Haller’s volley was disallowed for offside, and Robert Snodgrass's added-time strike in off the post was ruled out by the VAR for handball by Declan Rice in the build-up.
Sheffield United have 32 points, four behind fourth-placed Chelsea. West Ham are 10 points back in 16th.
Sheff Utd: 18 Jan v Arsenal (A)
West Ham: 18 Jan v Everton (H)