Schalke got off to a decent start, but a horror mistake from Timo Hildebrand gave Chelsea a 1-0 lead in the first half, before Eto'o and Ba added two more to seal victory in the second.
José Mourinho's men won convincingly 3-0 in the away game against the Germans, but the visitors started brightly this time, immediately putting Chelsea under pressure. Julian Draxler was looking typically lively, and went close in the opening minutes, before Adam Szalai also fired wide with Petr Cech beaten.
Chelsea were giving the ball away far too easily, with Branislav Ivanovic the biggest culprit, and Christian Fuchs also went close before the hosts had a chance of their own. Andre Schurrle stepped up to smash in a fine free-kick, but Timo Hildebrand managed to claw the ball away to keep the scores level.
The Schalke keeper was to then undo his fine work however, after taking forever to complete a routine clearance after putting the ball down, he allowed Samuel Eto'o to deflect his kick into the empty net, ruining his side's fine display up until that point.
The goal seemed to deflate Schalke, and the rest of the half was a fairly dull affair with no more chances for either side. After halftime, however, Chelsea upped their game, and didn't take long to register a killer second goal, Willian breezing down the wing and playing in Eto'o to double his and his team's tally for the evening, and giving Schalke little chance of getting something from the game.
The visitors then seemed utterly deflated, and Oscar had the ball in the net for a third after a cheeky scooped finish, only to be denied by the linesman's flag. It wasn't too much longer before Chelsea did have their third, however, after substitute Frank Lampard played a fine pass for Demba Ba, who volleyed home to replicate the scoreline in Gelsenkirchen.
Chelsea: Petr Cech, Cesar Azpilicueta, John Terry, Gary Cahill, Branislav Ivanovic, Ramires, John Obi Mikel, Andre Schurrle (Kevin de Bruyne 78'), Oscar (Frank Lampard 81'), Willian, Samuel Eto'o (Demba Ba 77').
Schalke 04: Timo Hildebrand, Dennis Aogo, Joel Matip, Benedikt Höwedes, Atsuto Uchida, Jermaine Jones, Roman Neustädter, Chrisitan Fuchs (Maximillian Meyer 67'), Kevin-Prince Boateng (Kolasinac 78'), Julian Draxler (Clemens 58'), Ádám Szalai