Jose Mourinho's Blues slipped to third in the table, behind Liverpool, after a damaging defeat in the Potteries - their first to Stoke in the league since 1975. Stoke, who rise to 12th, had never beaten Chelsea in 10 previous Premier League attempts and had not previously scored against them since April 2011.
Mourinho left Frank Lampard on the bench at the Britannia Stadium. It was one of two changes from Wednesday's 4-3 win at Sunderland, with Willian out of the squad altogether and John Obi Mikel and Andre Schurrle coming in.
Jonathan Walters returned to the Stoke side after missing the 0-0 draw with Cardiff, while Marc Muniesa deputised at left-back for Erik Pieters, who has a groin strain. On-loan Liverpool winger Assaidi dropped to the bench.
Chelsea went ahead after nine minutes. John Obi Mikel passed forwards to Schurrle, whose ball control was excellent and meant Ryan Shawcross could not be sure which way he was going. The German then struck a low accurate shot which went past Asmir Begovic and into the bottom corner.
The visitors looked in control for the vast part of the first half, during which Charlie Adam had to be replaced by Stephen Ireland due to injury, and squandered several chances, with Ramires particularly wasteful.
Chelsea had one obvious let-off when Walters headed wide from a Marko Arnautovic cross, but they were to go into the break level due to a poor piece of goalkeeping from Petr Cech.
The Czech keeper came to try and claim a corner-kick delivery from Arnautovic that he was never going to reach. Peter Crouch kept his head and saw his low shot from six yards go through the legs of both Ramires and Cech for the equaliser.
The second half was just five minutes old when Stoke forged ahead. Walters pushed over Cesar Azpilicueta on the right, and Chelsea wanted a foul. But the Republic of Ireland international escaped down the wing and found Ireland who curled a superb shot towards goal and saw the ball bounce in off the base of the post.
Three minutes later, Chelsea restored parity. Juan Mata's free-kick came off Crouch's thigh and the ball was heading out of the area - only for Schurrle to send it back with a crashing left-foot volley that flew in for his third goal of the season.
Soon afterwards, Schurrle saw another effort clip the top of the crossbar while Ireland had an even better chance at the other end. Crouch chested down Steven Nzonzi's left-wing cross and set up Ireland - who was just onside - for a shot from six yards out but he spooned his effort horribly wide.
Demba Ba replaced Fernando Torres, before Lampard and Samuel Eto'o were later introduced for Schurrle and Mikel.
Shawcross appeared to bundle over Ba in the area but referee Jon Moss chose not to award a penalty, despite the Chelsea man's appeals.
Assaidi replaced Walters in the 84th minute and within six minutes he had scored a wonderful winner. The Moroccan collected the ball in the left channel from Ireland's pass, before cutting infield behind Branislav Ivanovic and then firing in an excellent right-foot shot to put Stoke ahead once more - and there was no way back for Mourinho's men.
Chelsea host Steaua Bucharest in Champions League Group E on Wednesday before the visit of Crystal Palace next Saturday, when Stoke travel to face Hull.