PSV and Twente stay joint top in Holland
PSV lead on goal difference from Twente with 37 points after 17 matches at the halfway point of the season, four ahead of third-placed Groningen who beat Vitesse Arnhem 4-1 on Friday.
Ajax Amsterdam, held to 1-1 draw by visitors NEC Nijmegen, slipped to fourth spot with 32 points.
Brazilian Everton headed the opening goal for Heracles after 27 minutes in Eindhoven but Balazs Dzsudzsak equalised before setting up Ola Toivonen to put PSV in front before the break.
Everton found his way through the Eindhoven defence again to bring the scores level after 62 minutes but, after the visiting side had Peter Reekers sent off for a second booking, Toivonen again, Ibrahim Afellay and Marcus Berg secured the win for PSV.
Twente's Dutch international Theo Janssen scored either side of the break with curling free-kicks around the wall to earn a 2-0 victory over Graafschap as his side warmed up for the visit of Tottenham Hotspur in the Champions League on Tuesday.
Lacklustre Ajax took the lead against NEC through Mido's header 14 minutes from time but just two minutes later the Amsterdam side's defence failed to clear a free-kick from Lasse Schone and that gave Bram Nuytinck the chance to equalise.
The match between Excelsior Rotterdam and NAC Breda has been rescheduled for Monday due to heavy snowfall.