Draxler and Huntelaar were the heroes for the home side as it battled to a narrow victory over Klopp's men, who could not recover from a devastating first-half show
Goals in the opening 45 minutes from Julian Draxler and Klaas-Jan Huntelaar set the Champions League hopefuls on the path to victory, and although Robert Lewandowski pulled one back for the visitors, Schalke did not falter and stayed strong to claim all three points.
Dortmund came out as the side enjoying more possession at the start of Saturday's derby clash, but Jurgen Klopp's men struggled to make the most of the ball and were ineffective against a resolute backline. Schalke, meanwhile, sat back and waited for the chance to hit on the break; and it was soon rewarded as it surged into the lead.
With just 12 minutes on the clock, Marco Hoger's well-placed pass opened up the game for Atsuto Uchida on the right flank. The Japanese full back was impeccable in controlling the ball, and his low cross found Draxler in the box, who finished expertly on the half-volley to give Schalke the advantage.
There were chances for both teams to add to the scoresheet, in what was a frenetic, fiercely contested first half. Lukasz Piszczek released Jakub Blaszczykowski behind the defense, but the Polish forward dragged his effort just wide of the post to squander the opportunity for the equalizer. At the other end, Dortmund's attacking starlet Mario Gotze suddenly found himself thrust into the role of defensive savior, clearing off the line to stop Joel Matip's header from becoming the second Schalke strike.
It was a momentary reprieve, however, as BVB was once more punished for some slack marking in its own area. Uchida was once more the architect on the right, after some fluid build-up play; and with Dortmund's center backs nowhere to be found, Huntelaar gleefully took advantage of the space with a towering header that doubled the hosts' lead.
With just over 30 minutes to play, Dortmund was thrown a lifeline. Playing once again on the back of the Schalke defensive line, Lewandowski this time judged his run to perfection and the offside flag stayed down as he received Bender's pass. One-on-one, the Polish star kept his cool to slide the ball past Timo Hildebrand and bring his side back into the match.
The goal was the cue for BVB to throw everything into attack, as it desperately sought something from the encounter. Schalke, however, stayed strong at the back, and continued to pose a threat on the counter; it took another big save from Weidenfeller to stop Teemu Pukki adding a third as Dortmund left more and more men upfield.
Farfan was then left with his head in his hands, blazing over from close after being handed a rebound that just had to be the game's deciding strike. The action continued until the final minutes, but as the dust settled it was Schalke which remained out in front as it claimed a valuable derby victory.
Despite the defeat, Dortmund holds on to second place after Mainz's 1-0 defeat of Bayer Leverkusen. Schalke, meanwhile, currently finds itself in the Champions League places as it leapfrogs Eintracht Frankfurt into fourth, although its rival for the European competition has a game in hand.