Gareth Bale needed just two minutes to mark his return from injury with a goal as 10-man Real Madrid held on for a 4-2 victory over Espanyol on Sunday.

Bale had been out since January 3 with a calf strain but made an instant impact off the bench at the RCDE Stadium, where Karim Benzema continued his own rich vein of form by scoring twice.

Sergio Ramos was also on target with a brilliant header before Leo Baptistao kept Espanyol in sight. Bale and Benzema seemed to have wrapped things up but Raphael Varane was sent off with 18 minutes left and substitute Roberto Rosales drove in to set up a nervy finish.

Madrid, however, survived for their fifth win in sixth matches, even if it was only enough to restore the 10-point difference behind Barcelona, who had earlier seen off Girona 2-0, with Lionel Messi scoring a sublime chip.

Barca, five points ahead of Atletico Madrid, keep winning but Real are gaining momentum, with the resumption of the Champions League just around the corner.

Bale’s return will be particularly welcome for coach Santiago Solari. “Gareth is happy,” Solari said. “He came on and scored straight away, which is great for him and his confidence. Little by little he has to regain the form of before, like during the Club World Cup when he scored three goals. This is the Gareth we want to see, with that hunger to score goals.”

Benzema now has 15 goals this season and his first was a simple finish in the third minute, as he pounced on a rebound from Luka Modric’s shot.

Ramos is their second top scorer with 10, his excellent header looping into the far corner, before Baptistao gave Espanyol a lifeline with an emphatic shot from the edge of the area.

But Benzema added a third on the stroke of half-time and when Bale, after replacing Vinicius Junior, made it four, it looked like the game was up. Instead, Varane was sent off for bringing down Pablo Piatti as the last man and Rosales set Madrid’s nerves jangling by chesting and volleying past Thibaut Courtois with nine minutes left.

Benzema’s surge, and Bale’s fitness, could yet prove key to their second half of the season, particularly in Europe, in La Liga it is Messi, and Barca who lead the way.

Messi’s brilliant chip, his ninth goal in as many games, came after Nelson Semedo had given them an early lead, before Bernardo Espinosa’s red card consigned Girona to 39 minutes with 10 men.

The home fans were left incensed by that decision, as well as Messi’s reaction they believed caused it, but the Argentinian’s goal offered the perfect riposte.

“We struggled in the first half a bit but after the red card we had to dominate the game,” Barca coach Ernesto Valverde said. “It was a tough match, they pushed us a lot.”

Outside the stadium before kick-off, propped up on a railing, was a sign with an ironic message scrawled: “Miami, here we come”.

La Liga had hoped to drag this game across the Atlantic to promote Spanish football and the two clubs had supported the idea, with various perks dangled in front of fans, including free flights and tickets, not to mention the chance to be part of something “historic”.

The setting probably would have made little difference to the result - just the integrity of the competition - given Girona, now 14th, are without a win in 10 matches while Barca have managed eight league victories in a row.

Semedo’s goal was soft as Girona failed to clear three times before he swept the ball home and Philippe Coutinho could have made it two, only to hit the goalkeeper. It was one of a handful of underwhelming moments from the Brazilian.

Girona grew into the game but any momentum was checked shortly after half-time as Espinosa caught Suarez from behind and, after protests from Messi, was shown a second yellow card.

Messi was jeered and for a while the fury spurred Girona on. But he had the final say as Luis Suarez threaded through Jordi Alba, who squared to him.

Out rushed Yassine Bounou but Messi’s scoop was so good, even the diving Porro was powerless to keep it out. Some of Girona’s fans, previously enraged, now stood up to applaud.