Frank Lampard spared Chelsea's blushes as his seond-half penalty saw them take all three points against bottom club Portsmouth.
Lampard scored from the spot in the 78th minute after Branislav Ivanovic had been fouled by Marc Wilson.
Chelsea had followed defeat to Manchester City with a 3-3 home draw with Everton but were back to winning ways for the first time in five games in all competitions to restore their three-point lead at the top of the table.
Lampard's strike also ruined former boss Avram Grant's return to Stamford Bridge after lowly Pompey had threatened to leave with a point when Frederic Piquionne cancelled out a first-half goal from Nicolas Anelka in the 50th minute.
Yet again Chelsea's defending from set-pieces was called into question as they conceded their 12th goal out of 14 this season from a dead-ball situation.
Chelsea almost opened the scoring in the second minute when Michael Ballack's shot flashed just the wrong side of Asmir Begovic's left-hand upright.
Anelka was just as close with a 20-yard drive that was tipped around the post by Begovic.
Chelsea were completely on top and a corner from Deco in the seventh minute found the head of Ballack.
The Germany captain flicked the ball into the six-yard box where Salomon Kalou headed over the bar from point-blank range.
England midfielder Lampard, normally deadly from the edge of the penalty area, was thwarted by Begovic in the 18th minute.
The Pompey goalkeeper dived low to his right to collect Lampard's low drive with some ease.
But the goal finally arrived for the home side when defender Alex made a stunning run down the right flank and crossed for Anelka to sidefoot home from six yards.
The Brazilian defender held off the challenge of Hermann Hreidarsson to pull back for Anelka who finished with ease.
Chelsea goalkeeper Petr Cech had been a spectator for most of the first-half but the Czech Republic international preserved the home team's lead in the 33rd minute.
Portsmouth finally put a decent move together with Jamie O'Hara feeding Piquionne.
The Pompey striker turned and hit a vicious low shot which Cech did well to save as the ball sped towards the bottom corner.
But Chelsea responded quickly and when Ballack played a free-kick into the path of Alex, the Brazilian drilled a shot just wide of the far post.
In the 40th minute, Portsmouth should have equalised when Ivanovic gave away a free-kick.
But former Chelsea defender Tal Ben Haim headed O'Hara's free-kick just over from six yards.
Chelsea's nervousness from set-pieces was clear to see and Kevin-Prince Boateng almost made them pay in the 43rd minute but shot wide.
However, Chelsea's set-piece disasters continued in the 50th minute when captain John Terry fouled Boateng 25-yards out.
O'Hara's free-kick rebounded against the wall and then off the unfortunate Ashley Cole into the path of Piquionne who fired an equaliser into the roof of the net.
Ancelotti's insistence that his side would learn their lessons from recent setbacks had clearly fallen on deaf ears.
But Chelsea only had themselves to blame. They had given away numerous free-kicks around the penalty area that it had only been a matter of time before Portsmouth took advantage.
The response from the home side was immediate as they increased the tempo of the game.
But yet again Chelsea had waited for the opposing team to score before they began to play with restored intensity.
Ivanovic forced Begovic into a fine save when the full-back let fly from 25 yards in the 57th minute.
Ancelotti had clearly seen enough of the disappointing Deco and in the 58th minute, the Portugal international made way for Joe Cole.
Five minutes later Chelsea replaced John Mikel Obi with Florent Malouda as the home fans became more and more frustrated by their inability to re-impose themselves on the bottom club.
Anelka forced Begovic into a fine save at his near post but Chelsea's attempts to get back in front were somewhat laboured.
Chelsea finally got themselves out of trouble in the 78th minute when Ivanovic was felled by Wilson inside the penalty area and Lampard fired home the spot-kick to make it 2-1.
Substitute Fabio Borini then squandered a chance to make it three when he fired wide after rounding Begovic in the injury time.