Manchester City could thank the referee, Chris Kavanagh, for his unwitting help in Sergio Agüero’s opener in a match in which they struggled yet again.

It was a moment of farce that turned the contest, upset Sheffield United, who lost for the first time away this season, and which, in these VAR-troubled times, could not be reviewed as the rules do not allow for an official inadvertently being in the way in the build-up to a goal.

A disgruntled Chris Wilder said Kavanagh had not touched the ball so he could not, under the recent rule, award a drop ball. But the Sheffield United manager hinted that Kavanagh told him he wished he could have.

“It is definitely a gamechanger. I’ve been to see the referee and he has been honest,” Wilder said. “We had a private conversation. Whether the PGMOL say anything that’s up to them. I’ll keep it between me and him, put two and two together and you’ll get the answer.”

John Fleck was obstructed by Kavanagh when Oliver Norwood passed to him. This allowed Kevin De Bruyne to pounce and play in Agüero who smashed home in what was to be Pep Guardiola’s 100th Premier League win in a record 134 games, beating José Mourinho, who did it in 142.

The City manager said: “This achievement is a compliment for the club and the staff. An incredible achievement for all the people who did it. What we’ve done in three seasons is incredible. Especially in the Premier League you have to be consistent, we are all delighted.”

United lined up 3-5-2, made a bright start and impressed throughout. Norwood swung in a corner and City cleared. Two more followed and when Lys Mousset drifted ahead of Oleksandr Zinchenko he should have forced Claudio Bravo to save.

Something is missing this season from Guardiola’s team. It is as if the oil that makes the machine super-slick is no longer high grade and the latest illustration came when Rodri hit a loose pass into no man’s land. The midfielder then remonstrated with Kyle Walker for not moving as anticipated.

City were dominating but their rhythm remained off. De Bruyne, usually adept at choosing the correct option, tried to beat too many defenders and was dispossessed. Next Rodri hit a diagonal straight to George Baldock.

Instead it was Norwood beating De Bruyne with a neat turn and, later, Mousset racing through and beating Bravo only for VAR to rule offside in yet another marginal decision.

Cue more Wilder disgruntlement regarding the system. “There’s no conclusive evidence, blurred lines and angles. There needs to be a clear way of defining it.” Guardiola was equally strong. “Every weekend is a big mess. Hopefully next season it can do better.”

Fleck’s excellent crossfield pass for the disallowed goal was a warning to City. Many more followed. It vexed Guardiola: each time United came at them his side looked uneasy. When Norwood hit a raking 50-yard pass it left Eric García chasing Mousset and the manager furious with his 18-year-old debutant.

Eric García slotted in at centre-back. Photograph: Martin Rickett/PA

What followed after the break was hardly encouraging: Agüero miscontrolled, De Bruyne let fly wildly and Bernardo Silva ceded possession.

Given how disjointed Guardiola’s team were they needed a lucky break and now came the darkly comedic moment for United. Zinchenko hit City’s latest loose pass only for Kavanagh to find himself in the wrong place and Agüero was as lethal as ever in striking his 10th league goal of the season.

For all the circumstances the goal did not dishearten United. Instead Chris Basham slalomed through before finally being halted and Guardiola continued to berate his backline in general and García in particular.

There was visible relief, then, when De Bruyne began and finished a sweet move for the second goal. He is becoming City’s key player as the season ages and the way he collected the ball inside his half and found Mahrez was ominous. The winger swept forward and passed back to De Bruyne, whose finish craftily wrong-footed Dean Henderson.

This had Guardiola pumping the air and soothed nerves inside the Etihad Stadium. When the home fans sang the “We’ve got Guardiola” ditty there was the rare sight of the manager acknowledging them.

It indicated his thanks for the support as the match ended with Billy Sharp beating Bravo but not the keeper’s right-hand post.

For the second time in 48 hours Guardiola conceded the title, having done so first after the defeat at Wolves on Friday. “When a team has the number of points that Liverpool has why should we think about it.”