Despite sitting 15th in the Eredivisie, Erwin Koeman's men headed to Almelo unbeaten in six matches, having not lost since a 5-2 reverse at Heerenveen on November 8.
However, goals from Bryan Linssen and Mark Uth ensured that run came to an end, with Damiano Schet's reply proving no more than a consolation for Waalwijk.
Heracles, who would have been leapfrogged by RKC had they lost, climb from 13th to ninth in the table courtesy of a first win in four competitive games.
Linssen gave the hosts a deserved lead in the 41st minute, converting a rebound from close range after Arjan van Dijk had denied Ben Rienstra.
Heracles pulled further clear nine minutes after the break when Mikhael Rosheuvel's teasing right-wing cross left Mark Uth with the simplest of headers from two yards.
A deflected free-kick from Schet set up a tense finale, but RKC were unable to find a second goal.
Get the best features, fun and footballing frolics straight to your inbox every week.
Thank you for signing up to Four Four Two. You will receive a verification email shortly.
There was a problem. Please refresh the page and try again.