Four-time World Player of the Year Messi extended his record scoring run to 12 matches in the league with a penalty after 39 minutes after Valencia had taken the lead through Ever Banega.
Although Barca won its most recent league game at home to Osasuna, it lost a fortnight ago against Real Sociedad and this was a lacklustre display at the Mestalla.
Like Real Madrid, which lost to Granada on Saturday night (Sunday AEDT), Barca seemed to be suffering the effects of its 1-1 Spanish Cup semi-final first-leg.
Barcelona rested captain Carles Puyol as former Liverpool player Javier Mascherano was thrown into central defence alongside Gerard Pique, while Andres Iniesta was again chosen in attack instead of David Villa and Alexis Sanchez.
Apart from a 5-0 thumping by Real Madrid and elimination by the same side in the domestic Cup, Valencia have been in good form with four wins from five matches in the league.
While Barca probed in typical fashion looking for an opening, Valencia broke with speed down the wings with Jose Guardado and Juan Bernat.
Guardado had a snapshot which went wide in an even contest and another break from the home side saw Roberto Soldado brought down by Mascherano after 22 minutes, while the resulting free-kick was fired into the wall by Tino Costa.
Valencia was snapping at the heels of the Barca midfielders, who were looking uncomfortable and Valencia got the breakthrough from Banega.
Pique cleared a cross to the Argentine who had time in the centre of the area to bring the ball down and pick his spot in the corner.
Barca appeared in trouble but then won a penalty as Joao Pereira clipped Pedro Rodriguez on the edge of the area and Messi finished with aplomb from the spot.
It seemed to inspire Barca, who raised the tempo towards half-time, but Valencia was close to scoring in the dying minutes with a long-range strike from Guardado which was palmed away by keeper Victor Valdes.
Fabregas shot wide after a delightfully threaded pass from Messi but Valencia continued to have the better openings with Soldado failing to hit the target, followed by substitute Sergio Canales who was unable to put the former UEFA Champions League winner under further pressure.
Villa came on as a substitute but inexplicably missed when in front of goal for Barca and then in the final minutes, Valdes spread himself well to deny Soldado once again.
Atletico Madrid pulled back some ground on Barcelona's healthy advantage at the top after a 1-0 home win over Real Betis.
Diego Costa's second-half header was enough to grab the points.Malaga's Champions League push suffered a blow as it was held to a 1-1 home draw by lowly Real Zaragoza.
The host fell behind to an early Helder Postiga strike and although Alarcon Isco levelled from the penalty spot 10 minutes later, Malaga were far from their best.
Zaragoza's afternoon was soured slightly by the last-minute dismissal of Jose Mari for a second yellow card.
Mallorca's bid to revive its flagging fortunes after the January transfer window were immediately undermined by a 3-0 loss at Real Sociedad.
The Island side called new names Fernando Tissone and Alan Hutton into its starting XI, while Antonio Lopez returned on the bench, but it failed to provide any inspiration as Mallorca instead lost ground in its survival fight.
Javi Marquez's dismissal on the half-hour, after two cautions in the space of four minutes, paved the way for Sociedad to surge to victory after half-time with goals from Gonzalo Castro, Carlos Vela and Diego Irfan.
Mallorca has now won just once in 17 league games and are four points adrift of safety.
Sevilla's resurgence under Unai Emery continued as it won for a fourth consecutive home game, 2-1 over Rayo Vallecano.
Ivan Rakitic and Alvaro Negredo got the goals either side of Alejandro Dominguez's 52nd-minute penalty.