With Hertha hosting Bayer Leverkusen on Saturday, Wolfsburg did not waste their chance to move up the table and close the gap to just a single point while Grafite has now scored 17 goals in 15 league games.
But Wolfsburg coach Felix Magath was unimpressed about his team's credentials in the title race after they conceded three goals.
"You could see we are not title candidates," said the former Bayern Munich boss, whose side has lost just five of their 24 games this season.
"If you lead 3-1 and 4-2, you need to close the game down. Schalke exposed some of our weaknesses."
Wolfsburg are unbeaten at home in the league this season, but the record was in danger early on as Schalke's Germany defender Heiko Westermann's pin-point accurate shot gave Wolfsburg goalkeeper Diego Benaglio no chance.
His goal after only nine minutes was cancelled out when Grafite was brought down in the penalty area, only to gather himself to convert the spot kick on 26 minutes.
The home side took a 2-1 lead into the break when Bosnia striker Edin Dzeko kept up his remarkable scoring record with his eighth goal in six games to bring his tally to 13 goals in 22 games.
Schalke left Dzeko unmarked on 44 minutes and he slotted his shot past goalkeeper Mathias Schober.
After the break, Grafite knocked in his second when midfielder Zvjezdan Misimovic slipped him a pass and the Brazilian found the target again after 74 minutes.
Germany midfielder Jermaine Jones scored just two minutes later to keep Schalke in the game, but Grafite completed his hat-trick when substitute Ashkan Dejagah picked up a loose ball and forced a two-on-three situation.
Although the Schalke defence scrambled back, the Germany Under-21 star tried a shot and Grafite was on hand to make sure the ball crossed the line on 84 minutes to claim his third of the night.
With time running out, former Germany striker Kevin Kuranyi hit a final consolation goal deep in injury time.