Emerson Palmieri, a former Chelsea player, scored against his former club to earn West Ham a point and put pressure on Blues manager Graham Potter.
Chelsea fielded a new-look £200 million forward line but, despite taking the lead, were frustrated once more and have now won just once in seven Premier League games.
Joao Felix had already had a goal disallowed for offside when the Portugal forward fired visitors Chelsea ahead with a volleyed finish after a delicious assist from Enzo Fernandez, the £107 million British transfer record signing from Benfica.
Kai Havertz thought he had doubled the lead, only for Chelsea’s celebrations to be cut short by another offside flag, before Emerson’s first Premier League goal for Italy.
The 28-year-old, who spent four years at Stamford Bridge, finished at the far post after Jarrod Bowen flicked on Vladimir Coufal’s cross.
Chelsea, who have lost 14 points in their last seven Premier League games, created more chances but were unable to convert them.
Noni Madueke was lively on his first start for the club since joining from PSV Eindhoven for £30.7 million, forcing a fine save from Lukasz Fabianski before the West Ham keeper saved Felix’s free-kick.
West Ham thought they had won it in the closing stages when substitute Tomas Soucek scored from close range, but it was ruled out for offside – the match’s third disallowed goal.
Another frustrating day for Potter and Chelsea, as strong appeals for a penalty in the 89th minute were turned down after Soucek appeared to handle Conor Gallagher’s shot inside his own box.