Ilkay Gundogan and Fernandino were on target for Manchester City as Pep Guardiola's side's Premier League dominance over West Ham continued.
Under Guardiola, City have won 10 of their last 11 Premier League encounters with the Hammers.
After 33 minutes, Gundogan delivered the decisive moment when he turned in a deflected Riyad Mahrez effort at the far-post in a game played in a snowstorm before half-time.
The goal was the German midfielder's third goal of the season, and his second in as many league games, and it was followed up in the final minute by Fernandinho, who had only been added three minutes before to tie the game up.
The veteran Brazilian striker had not scored in the Premier League since October 2018, yet he struck from the edge of the box.
Manuel Lanzini equalized late-on with the game's final kick, costing Ederson his 100th clean sheet in all competitions but it was eventually inadequate to prevent City from reclaiming second place, six points ahead of the Hammers.
Despite suffering consecutive Premier League defeats for the first time since April, the Londoners are still fourth on the table.
Manchester City's next Premier League game is at Aston Villa on Wednesday, 1 December (20:15 GMT) while West Ham entertain Brighton at London Stadium on the same day (19:30 GMT).
Photo Credit: Getty Image
MORE STORIES
Â