Chelsea struck twice in the space of two second half minutes to leave Villa Park with all three points.
Aston Villa had led at half-time thanks to Kortney Hause’s first Premier League goal, but Frank Lampard’s substitutes helped to turn the match for the visitors.
Christian Pulisic tapped home at the far post minutes after coming on before Olivier Giroud completed the comeback with a deflected effort.
Jota came close to levelling for the hosts in the closing minutes, but they ultimately came up just short against the Blues.
Aside from the sprinklers disrupting play, there was little to report in the first 20 minutes of the game with neither side mustering a shot on goal.
However, in the 21st minute, Ørjan Nyland was called into action as he produced a one-handed save to parry Mason Mount’s drive to safety.
It took the home side 32 minutes to test Kepa Arrizabalaga, with the Spaniard getting down smartly to block Anwar El Ghazi’s rasping drive.
Dean Smith’s men were growing in confidence and when El Ghazi got in behind Cesar Azpilicueta, his cross was flicked just wide of the far post by John McGinn.
As half-time approached with the visitors in the ascendency, Villa struck with a sucker punch.
Douglas Luiz sent a cross to the back post where the waiting Hause forced Arrizabalaga into a low save. The ‘keeper couldn’t direct it away from the danger and the defender was there to pounce, swivelling and sending a shot looping past the scrambling Antonio Rudiger on the goalline.
Pulisic and Ross Barkley were sent on shortly after the break as Frank Lampard looked to break Villa’s resistance, and his changes paid off with the equaliser on 60 minutes.
Azpilicueta picked up the ball on the right hand-side and his cross was turned home by Pulisic at the far post.
The turnaround was complete barely a minute later when Giroud’s close-range effort deflected off Conor Hourihane and past Nyland.
Villa were working hard to mount a response and they nearly pulled level three minutes from time when Jota shot just wide with his first touch after coming on for McGinn.
Villa: Nyland, Konsa, Hause, Mings, Targett, McGinn (Jota 87), Luiz, Hourihane (Nakamba 69), El Ghazi (Trezeguet 69), Davis (Samatta 57), Grealish (c).
Subs not used: Reina, Taylor, Borja, Elmohamady, Vassilev.