Harry Redknapp admitted we should have been out of sight after the first half against City.
Instead, it took a late penalty from Robbie Keane to bag the three points our overall performance deserved at the Lane.
The victory maintained hopes of finishing seventh in the Premier League and qualifying for Europe but Fulham hold the upper hand after beating Newcastle 1-0 at St James Park.
A typical poacher's finish from Jermain Defoe handed us a deserved 1-0 lead at half-time as we were denied on three occasions by Shay Given and Keane saw another two good chances slip away.
City levelled when substitute Valeri Bojinov scored the first opposition league goal at the Lane since January 27.
Europe was drifting out of our sights with five minutes left but Fraizer Campbell was bundled over by Micah Richards going for Defoe's cross, referee Mark Halsey pointed to the spot and Keane slotted home the winner.
"We dominated the first half and should have been out of sight," said Harry.
"We played some terrific football, created chances and if we'd have come in at half-time three goals up it would have been about right.
"Unfortunately we lost Jonathan Woodgate at half-time with a sore groin, that disrupted us and then JJ was sick on the pitch after a minute of the second half.
"There were a couple of injuries, the game lost its flow and we lost our way.
"We struggled to get a grip back on the game after that but we came through in the end."
City weren't happy with the penalty award, but Harry countered: "It looked blatant to me.
"I must admit I was a bit worried that Shay would know where Robbie would put his penalties as they've played together enough for the Republic of Ireland, but luckily enough Robbie kept his cool and stuck it away."