City, needing three points to become champions of England for the seventh time, took the lead just before half-time through Raheem Sterling's close-range strike.
Aguero had a glorious chance to make it 2-0 from the spot moments later when Billy Gilmour fouled Gabriel Jesus, but the Argentina striker opted for a dinked effort that was easily saved by Edouard Mendy.
It proved a costly miss, as Chelsea improved after the break and equalised when Cesar Azpilicueta set up Hakim Ziyech to fire home from the edge of the area.
The visitors had two more efforts ruled out for offside before Marcus Alonso won it for them in injury time, meeting Timo Werner's pull-back and sending the ball looping over Ederson.
This was Chelsea's second win over City in the space of three weeks, following their victory in the FA Cup semi-final at Wembley in April.