The result leaves PSV two points ahead of Ajax, who face PEC Zwolle at the Amsterdam ArenA on Sunday and could end the weekend as table-toppers.
Marten de Roon and Yassine El Ghanassy were both on target for Heerenveen in the first half, with Kevin Strootman mustering PSV's only response 16 minutes from time.
At the other end of the table, basement boys Willem II managed just their third win of the season at home to second-bottom VVV-Venlo.
Danny Gujit was the match winner when he scored the only goal in the 89th minute.
Ten-man Heracles Almelo also won by a 1-0 scoreline, Everton netting in the 58th minute to sink NEC Nijmegen. The hosts held on for the final 23 minutes a man down following Thomas Bruns' red card.
Finally, Viktor Elm's 25th-minute equaliser earned struggling AZ Alkmaar a 1-1 home draw against ADO Den Haag, who had taken a 10th-minute lead through Mike van Duinen.