|Kaka, left, scored his first league goal of the season as he returned to the side following injury [AFP]
Cristiano Ronaldo scored a sensational hat-trick as Real Madrid twice came from behind to defeat Villarreal 4-2 to maintain their perfect home record and close to within two points of Barcelona.
Portuguese star Ronaldo took his season's tally to 22 Spanish Primera Division goals with strikes in the eighth, 44th and 78th minutes after third-place Villarreal had threatened an upset after twice going in front in a pulsating first half at the Santiago Bernabeu.
Barcelona's 4-0 win over Deportivo La Coruna on Saturday had put the pressure on Real to respond the next day.
Ronaldo pulled Real back into the game with his 20th and 21st league goals of the season to cancel out goals from Ruben Cani, after six minutes, and Marco Ruben in the 17th.
In the second half, Ronaldo again took centre stage putting Real ahead in the 78th minute after a mistake from goalkeeper Diego Lopez before Brazilian substitute Kaka celebrated his return to fitness with his first league goal of the season minutes later.
'Doing my bit'
"I am just doing my bit and I couldn't score all these goals without my teammates," said Ronaldo.
"There is a long way to go in the season and I want to continue in this vein and help Real Madrid win something important.
"The fans were great tonight and surprised me. We noticed it a lot in the second half when we fought back."
Real coach Jose Mourinho celebrated wildly on the touchline to the anger of the Villarreal dugout, and the visitors' coach Juan Carlos Garrido was sent off for protesting that Ronaldo's third goal was offside.
"The referees are afraid to make a mistake against Real Madrid but not against another team," fumed Garrido.
"There were three actions when Real players should have been shown yellow cards and weren't. The goal for 3-2 was also decisive and there were two offsides in the same action."
Valencia stayed in fourth after re-establishing their three-point gap over fifth-placed Espanyol with an 83rd minute goal by Juan Mata.
Espanyol got over their recent blip with a comfortable 4-0 home win over Real Zaragoza at the Cornella-El Prat on Sunday to boost their European Champions League hopes, as they stay three points behind Valencia.