A Lionel Messi penalty gave Barcelona a hard-won three points in a feisty derby against Espanyol.
The win means Barca top the table prior to Atletico Madrid’s trip to Athletic Bilbao.
Los Colchoneros will return to first place if they beat the Basques while Real Madrid can stay in the race at home to Rayo Vallecano later on Saturday.
Messi converted from 12 yards after Javi Lopez was adjudged to have handled the ball from a cross that was bound for Neymar.
Messi rolled the ball past Kiko Casilla to net a goal that could prove pivotal in keeping Barca’s title push on track. It was Messi’s first goal at Cornella-El Prat in his fourth visit.
Casilla was sent off with seven minutes to play when he raced out of his penalty area and used his hands to stop Messi reaching a floated pass.
Espanyol had used all three substitutes by that point so Javi Lopez, who gave away the earlier penalty, went in goal.
Tata Martino took Andres Iniesta out of the XI and reintroduced Pedro while Jose Pinto replaced the stricken Victor Valdes.
Javier Aguirre fielded La Masia graduate and Espanyol talisman Sergio Garcia in attack and also named former Barca winger Simao.
The first-half saw some presentable chances for either side and plenty of aggression from the hosts, more than once spilling over into foul play.
Espanyol pushed Barca high up the pitch and pressed the ball aggressively, occasionally crossing the line with referee Carlos Clos Gomez busy.
Gerard Pique received his fifth booking of the season for one incident and will miss Barca’s next League game, against Real Betis, as a result.
Christian Stuani was booked for an over-the-ball challenge on Jordi Alba and also a bout of handbags with Neymar.
Espanyol wanted a penalty when a flailing Javier Mascherano arm caught Javi Lopez, while Mascherano stayed down holding his ankle.
Barca started the game brightly and more than once looked to find Neymar in space, with the Brazilian wasting the best chance of the first 45 minutes.
Alves broke down the right and squared for his compatriot but from six yards, Neymar managed to put the ball over the bar.
Messi had a few half-chances while for Espanyol, Pizzi twice went close and probably should have done better both times.
Espanyol’s best spell of the first-half came right at its end, a series of corners causing problems for the Barca backline.
The opening stages of the second-half followed a similar pattern of the first – more minor quarrels than action and whirlwind Espanyol pressing.
For their part, Barca had plenty of possession and moved the ball well but struggled to get past the blue and white wall.
Espanyol remained a danger on the break and one nice move released Juan Funtes but the ball for the left-back was a little short and his control poor, allowing Barca to recover.
Chances were few and far between for much of the half, Espanyol defending en masse and trying to break via Garcia.
The sheer number of Espanyol players back meant Barca were unable to commit enough resources forward to break through in any meaningful way.
When Barca did find space through Neymar it took a well-timed Diego Colotto challenge to snuff out the danger for a corner.
The resulting corner saw Messi and Cesc Fabregas combine to nearly create an opening, while shortly after Pique hit the crossbar from a corner.
Minutes later, Barca were in front when Clos Gomez decided Lopez had intentionally handled the ball from Neymar’s chest down. Messi made no mistake.
Barca were stepping up the tempo at the time the penalty was given but Espanyol’s defending had been so resolute there was real doubt the goal would come.
Casilla saw red shortly after and Lopez went in goal for the final few minutes, standing up to a couple of Barca efforts but La Blaugrana still took the points.
Espanyol 0-1 Barcelona
Messi pen 77 (FCB)
Espanyol: Casilla, Javi Lopez, Colotto, Moreno (Sidnei 48), Fuentes; Víctor Sanchez, David Lopez; Simao (Cordoba 78), Pizzi (Alex 66), Stuani; Sergio Garcia
Barcelona: Pinto, Alves, Pique, Mascherano, Alba; Xavi, Busquets, Fabregas (Roberto 90); Pedro (Iniesta 78), Messi, Neymar (Alexis 80)