Everton's dogged display ended Chelsea's 100 per cent start and eased the pressure on boss David Moyes.
The home side broke the deadlock when James Beattie scored from the spot after Tim Cahill had been fouled.
Frank Lampard levelled after the break but Everton held on with help from the assistant referee, who wrongly ruled out Didier Drogba's strike for offside.
Everton remain bottom of the table but the draw meant they avoided a new club record of seven consecutive defeats.
Chelsea hold a nine-point lead at the top of the Premiership despite being denied their 10th straight victory.
Moyes responded to his side's scoring problems by partnering the fit-again Beattie and Duncan Ferguson up front for the first time.
And though prompted by a training injury to Ricardo Carvalho, Chelsea boss Jose Mourinho responded by bringing Robert Huth in at centre-back, as well as restoring Petr Cech in goal.
Unsurprisingly, the visitors were immediately into their stride, Michael Essien blazing over and Nigel Martyn turning away Lampard's fierce drive - all inside five minutes.
Everton eventually settled and began to get to grips with the Premiership leaders.
They might even have taken the lead on 15 minutes when David Weir was left unmarked from a Mikel Arteta corner, but the defender could not keep his header away from Cech.
Beattie added to Chelsea's unease when, in the space of five minutes, he cut John Terry's nose in an aerial challenge and caught Claude Makelele on the head with a stray boot.
Then, after Shaun Wright-Phillips had brought down Cahill inside the box, the Everton striker drove home a penalty off the underside of the bar.
Lampard's equaliser failed to open the floodgates for Chelsea
Everton lost Nuno Valente to injury before the break and Chelsea then drew level when Lampard bent a wicked shot past Martyn at the start of the second half.
The visitors continued to enjoy plenty of possession, but Everton refused to capitulate.
They rode their luck when Drogba's strike was disallowed for a dubious offside decision against Eidur Gudjohnsen.
But Chelsea also escaped when the referee waved play on after a cross from substitute Marcus Bent hit Terry's arm in the penalty area.
Substitute Arjen Robben beefed up the Chelsea attack and saw one dipping effort fly just over the crossbar with Martyn beaten.
But the visitors could not break down Everton, who were given a huge ovation by the home fans at the final whistle.
Everton: Martyn, Hibbert, Yobo, Weir, Nuno Valente (Ferrari 45), Arteta, Cahill (Davies 70), Neville, Kilbane, Beattie, Ferguson (Bent 78).
Subs Not Used: Wright, McFadden.
Booked: Arteta, Ferrari.
Goals: Beattie 37 pen.
Chelsea: Cech, Gallas, Huth, Terry, Del Horno, Lampard, Makelele, Essien, Wright-Phillips (Gudjohnsen 58), Joe Cole (Robben 67), Drogba (Crespo 71).
Subs Not Used: Cudicini, Paulo Ferreira.
Booked: Drogba, Huth.
Goals: Lampard 50.
Ref: M Clattenburg (Co Durham).