The Blancos made it five wins in a row in all competitions with a 6-1 victory over Mallorca.
Karim Benzema opened the scoring after just three minutes and Marco Asensio doubled the advantage on 24 minutes, only for Kang-In Lee to get one back a minute later.
Asensio reopened a two-goal advantage just shy of the 30-minute mark and then completed his hat-trick in the second half. Benzema added a second of his own on 78 minutes before Isco scored his first goal in two seasons on 84 minutes.
Sevilla moved up to third by defeating Valencia 3-1.
Papu Gomez broke the deadlock on three minutes while a Toni Lato own goal and Rafa Mir strike made it 3-0 by midway through the opening period. Hugo Duro hit a consolation for the away team.
Elsewhere, Espanyol saw off Alaves 1-0 thanks to a Raul de Tomas penalty.
Yeremi Pino struck first for the home side after five minutes, only for Johan Mojica to equalise on 19 minutes. Manuel Trigueros put Villarreal back in front before half-time before Arnaut Danjuma opened up some daylight on the hour. Alberto Moreno added a fourth in the third minute of injury time.
The big game on Thursday sees crisis-hit Barcelona travel to Cadiz in a must-win match for under-pressure coach Ronald Koeman.
LA LIGA STATISTICS: