Rayo could not handle the partnership which accounted for all three goals - Villa opening the scoring before Messi netted twice to extend his stunning goalscoring record to 18 successive league matches.
The visitors remain in mid-table but can feel satisfied with an enterprising display which saw them create numerous chances before Raul Tamudo grabbed a late consolation.
Atletico Madrid bounced back from last week's home defeat to Real Sociedad - a result which ended their 100 per cent league record at the Vicente Calderon this season - with a 2-0 win at Osasuna.
Diego Costa netted both goals, scoring in the 35th and 48th minutes, as Atletico remained a point behind second-placed Real Madrid.
Malaga, meanwhile, dropped out of the top four for the first time in seven weeks after surprisingly losing 2-0 home to Espanyol.
Second-half goals by Diego Colotto and Sergio Garcia gave the visitors a smash-and-grab victory at La Rosaleda as Malaga, who have progressed through to the quarter-finals of the Champions League, saw their winless run in La Liga stretch to four games.
Sevilla kept their faint hopes of achieving a Europa League place alive with a 4-0 victory over Real Zaragoza, the goals coming from Coke (two), Jose Antonio Reyes and Alvaro Negredo, while Granada drew 1-1 with Levante.
Granada took a 32nd-minute lead through Guilherme Siqueira's penalty but Robert Acquafresca equalised for Levante just five minutes after coming on as a half-time substitute.
On Saturday, Gonzalo Higuain scored twice to help Real Madrid to a 5-2 home win over Real Mallorca.
Jose Mourinho's team hardly had it all their own way though and they trailed at half-time, but they were able to turn the match around to keep alive their slim title hopes.
Emilio Nsue gave the visitors a sixth-minute lead but striker Higuain levelled on the quarter-hour mark.
Alejandro Alfaro put Gregorio Manzano's side in front again after 21 minutes, but Mallorca lost their grip on the match in the second half as Cristiano Ronaldo, Luka Modric, Higuain and Karim Benzema scored to give a dominant Madrid the three points.
Real Sociedad climbed up to fourth place with a 4-1 win over Real Valladolid.
Two first-half goals by Antoine Griezmann and one from Imanol Agirretxe set the Basques on their way to victory, and Xabi Prieto rounded off the win when he netted shortly after the re-start.
Javi Guerra scored a late consolation goal for the visitors.
Valencia nudged their way up to fifth spot, bypassing Real Betis in the process after beating the team from Seville 3-0.
Betis had defender Antonio Amaya sent off for bringing down Roberto Soldado in the penalty area, and the Valencia striker took the penalty himself to give the home side a 17th-minute lead.
They did not double their lead until the 85th minute, with Junior Paulao netting an own goal, and Jonas added the third in the dying moments.
Borja Fernandez claimed the only goal of the game as Getafe kept their Europa League hopes alive with victory over Athletic Bilbao.
The decisive moment came in the seventh minute when the midfielder lashed the ball home following Pedro Leon's corner.
On Friday, Deportivo La Coruna gave their survival hopes a vital boost with a 3-1 victory over 10-man relegation rivals Celta Vigo in the Galician derby.
Sunday's La Liga Results
Saturday's La Liga Results
Friday's La Liga Result