
The same as Real earlier Sunday against Mallorca - a dramatic 4-3 win for the whites - Villarreal needed two late goals to overcome Sevilla.
Real now have 28 points from 12 games, just one point more than Villarreal.
In joint third place on 24 points are Barcelona and Valencia, both of whom played Saturday.
Terrible travellers Barcelona were beaten 2-0 by Getafe, and Valencia thrashed Murcia 3-0 to give new coach Ronald Koeman his first win.
Real and Villarreal demonstrated Sunday that they are the top two because of their never-say-die spirits and attacking power, rather than stout defence.
Villarreal's hero was two-goal striker Guille Franco, one of the best headers of the ball in world football right now. The Mexico forward headed the hosts ahead in the 31st minute, only for Frederic Kanoute to quickly level for Sevilla.
The visitors were then crippled by the sending-off of Daniel Alves for dissent. Nonetheless, fellow Brazilian Luis Fabiano gave them the lead just after the interval after the Villarreal defence had failed to clear a corner.
In the 68th minute, Franco made it 2-2 with another powerful header. Villarreal continued to come forward for the win, while 10- man Sevilla were desperate to hear the final whistle.
Just five minutes from time, Sevilla defender Aquivaldo Mosquera committed a ridiculous penalty on Mati Fernandez, and the Chilean supersub made no mistake with his spot-kick.
"The referee really didn't help us tonight," moaned Luis Fabiano to Canal Plus. "I think a draw would have been a fairer result."
Earlier Sunday, Real had shown Villarreal the way with their own come-from-behind win.
With half an hour left, Real were down 3-2 against Mallorca and again needed to call on all of their mental and physical reserves.
Robinho had headed Real into the lead in the 12th minute on a centre from Marcelo. Fernando Varela quickly equalized for Mallorca, only for Robinho to restore Real's lead in the 17th minute after being set up by Raul Gonzalez.
Varela made it 2-2 in the 38th minute with a classy second goal.
In the 58th minute, Daniel Guiza celebrated his first Spain call- up by making it 3-2 for Mallorca.
Just four minutes later, Raul made it 3-3 with his trusty left foot after being set up by Robinho.
Mallorca fell further and further back, and it was little surprise when Van Nistelrooy put away the winner in the 73rd minute on a pass from the ubiquitous Raul.
Real had chances to add to their lead toward the end, with the Mallorca defence looking weary.
"We normally win this kind of match," Raul told Cadena SER, "because of the help of the fans, who were wonderful, and because of our mental toughness."
Earlier Sunday, Espanyol had moved up to fifth - two points behind Barcelona, Villarreal and Valencia - with a 2-1 win over Athletic Bilbao.
Igor Gabilondo gave Bilbao an early lead, only for Spain striker Raul Tamudo to level for Espanyol in the 40th minute.
Bilbao seemed about to hang on for a draw until the 89th minute, when veteran defender Aitor Ocio turned a centre from Espanyol's Clemente Rodriguez into his own goal.
Espanyol defender Daniel Jarque was sent off in injury time, but the hosts had few problems in holding on for an important victory.
Atletico Madrid fall down to sixth - one point below Espanyol - after a 0-0 draw at lowly Almeria.
Atleti were lucky to escape with a point, because the hosts created the better chances.
In the 30th minute, Almeria playmaker Felipe Melo had a penalty well saved by Leo Franco, after a foul by Georgios Seitaridis on Albert Crusat.
Almeria pressed powerfully in the second half, and Alvaro Negredo hit the Atleti post in the 61st minute.
Luckless Almeria coach Unai Emery will now have to invite around 30 journalists for dinner, which he promised them in a press conference Friday if his team failed to score.
Betis, meanwhile, came from behind to beat under-performing Zaragoza, a result that saves the job of coach Hector Cuper - for the time being.
The hero in Seville was Argentine striker Mariano Pavone with two goals in the last 12 minutes.
Zaragoza had gone ahead in the 35th minute through Andres D'Alessandro but failed to beat on their lead.
In Sunday's other early games, Racing Santander won along the coast in La Coruna with a late goal from African striker Mohammed Tchite.
Recreativo Huelva beat Osasuna 1-0 on a late goal from Carlos Martins, and Valladolid beat Levante by the same score thanks to a solitary strike from Jonathan Sesma.
The results leave Levante rock bottom with just four points. Then come Betis on 11 and a cluster of four teams - Huelva, Coruna, Almeria and Osasuna - on 12. By Duncan Shaw, dpa