There was late heartbreak for patched-up, 10-man Hammers at Stamford Bridge, as substitute Christian Pulisic netted a dramatic decider to leave David Moyes' men with the Blues.

Having made a half-dozen changes to a West Ham United side all but devoid of central defenders, the Scot had looked destined to see his team earn a gritty goalless draw before this disjointed derby exploded into life during the dying minutes.

But after Łukasz Fabiański had saved Jorginho’s penalty once Craig Dawson had been dismissed for fouling Romelu Lukaku, Pulisic popped up with a 90th-minute decider that keeps Chelsea in third, while the disappointed Hammers now contemplate the next step of their exciting European adventure.

Following his side’s 1-1 draw with Burnley last Sunday, Moyes had found himself arriving in the West End with just one fit recognised centre-back in the shape of Dawson after Issa Diop (ankle) joined former Blues’ defender Kurt Zouma (ankle) and Angelo Ogbonna (knee) on the casualty list.

Delicately trying to balance his ongoing quest for European qualification next season, with that crucial upcoming Europa League, semi-final first-leg against Eintracht Frankfurt in four days’ time, the Hammers boss made wholesale changes from the team that had rescued a late point against the struggling Clarets last Sunday.

Skipper Mark Noble, Vladimír Coufal, Arthur Masuaku, Saïd Benrahma, Andriy Yarmolenko and Pablo Fornals all returned to the starting line-up, which meant places on the bench for three of his big guns - Declan Rice, Jarrod Bowen and Michail Antonio.

Nikola Vlašić and Manuel Lanzini also stood down for this Stamford Bridge return some five months after Masuaku’s dramatic late strike had given the Hammers a thrilling 3-2 victory over the Blues at London Stadium in December.

With Coufal and Masuaku starting as wing-backs, Ben Johnson shuffled inside to join Dawson and Aaron Cresswell in a central trident but apart from N’Golo Kanté’s early 18-yarder that bounced wide, the makeshift visiting defence were rarely troubled in the opening exchanges.

Indeed, it was West Ham who had the best opportunity to break the deadlock on 17 minutes, when Benrahma robbed César Azpilicueta on halfway but after bursting into the Blues’ box, the Algerian chose the wrong option, striking a low, tightly-angled effort into Edouard Mendy’s clutches, when a cut-back to the supporting Yarmolenko would have been the sensible choice.

Chelsea had endured a torrid time on Wednesday evening as their 4-2 defeat at the hands of Arsenal made it a hat-trick of home defeats, while it was also the second successive home Premier League game in which they had conceded four goals.

Four days on from that Gunners loss and with his side four places and 10 points ahead of seventh-placed Hammers, Thomas Tuchel had intended to make three changes with Jorginho, Thiago Silva and Kai Havertz coming in for Reece James plus substitutes Lukaku and Malang Sarr.

An injury sustained to Andreas Christensen in the warm-up, however, meant the Chelsea head coach also had to make another enforced change with Trevoh Chalobah earning a late, late call-up from the bench.

The recalled Havertz found Alonso’s teasing cross just too high and, after Masuaku’s deflected 20-yarder looped into Mendy’s gloves, Mason Mount launched a similar range-finder into the Hammers fans making their presence known above Fabiański’s goal.

A painful, accidental clash of heads had seen Tomáš Souček and Silva require treatment after Chelsea’s first corner of the afternoon, while at the other end, Yarmolenko raced onto Fornals’ inviting through ball before clipping an angled 12-yarder across the face of Mendy and the right-hand upright.

Earning brief, yet stern, lectures from referee Michael Oliver, Silva then also consciously felled Fornals and Yarmolenko but West Ham’s consequent free-kicks came to nothing as the first half meandered to a largely uneventful conclusion.

Just after the restart, the ever-determined, ever-defiant Dawson brilliantly charged down Timo Werner’s goalbound shot, before the Hammers replied with a slick counter that saw Yarmolenko cut back to Souček whose low effort was also blocked.

With the hour approaching, Kanté must have thought he had broken the stalemate, when his 18-yarder looped off Dawson but the kneeling Fabiański brilliantly adjusted his stance to somehow claim the ball.

Chalobah then forced the Polish keeper to claw his awkward shot aside and with the Hammers still in the contest, Moyes summoned Rice from the bench as Noble retired having put in a trademark hour-long shift of reliability and dependability.

Both teams had great chances as the 70 minute-mark approached, first Yarmolenko saw Mendy dive into the Ukrainian’s studs before Mount’s low effort ricocheted to Werner, whose angled follow-up ripped into the side-netting.

After Yarmolenko made way for Bowen, Werner then forced Fabiański into another full-length save before Tuchel made a triple substitution, replacing the German goal-getter, Havertz and Ruben Loftus-Cheek with Lukaku, Pulisic and Hakim Ziyech.

Moyes also went for his third change of the afternoon as Lanzini came on for Benrahma but it the switches from the opposite dug-out would, ultimately, decide the outcome of this scrappy encounter.

With just three minutes remaining, Lukaku bulldozed his way behind Dawson, whose tug on the Belgian striker just inside the Hammers area saw referee Oliver point to the spot.

But there was yet more agony for the distraught defender, who then had his yellow card upgraded to red after the official consulted his pitch-side monitor.

Incredibly, Jorginho’s penalty was more akin to a back-pass and with the Italian international merely stroking the ball straight down the middle, Fabiański could probably have thrown his cap on a simply dreadful grass-cutter.

That miserable miss looked to have signalled a massive let-off for Moyes' 10-men but with just seconds of the regulation 90 minutes remaining Mount played in the overlapping Alonso, whose low left-wing cross into the danger-zone was swept home from eight yards by Pulisic who claimed his eighth goal of the season and all three points.

Chelsea: Mendy, Azpilicueta, Chalobah, Thiago Silva, Alonso, Loftus-Cheek (Ziyech 76), Kanté, Jorginho, Mount, Werner (Pulisic 76), Havertz (Lukaku 76). Unused subs: Arrizabalaga, Ñíguez, Barkley, Kennedy, Sarr.

West Ham United: Fabiański, Johnson, Cresswell, Dawson, Coufal, Masuaku, Noble (Rice 62), Souček, Fornals, Benrahma (Lanzini 78), Yarmolenko (Bowen 72). Unused subs: Areola, Antonio, Vlašić, Fredericks, Král, Alese.

Booked: Alonso (82). Sent off: Dawson (85).

Referee: Michael Oliver.

Attendance: 32,231.