Ronaldo rescues Real as Barca crush Espanyol
Argentina's Lionel Messi, favourite to collect a fourth world player of the year award on Monday, scored 91 goals for club and country in 2012 and started out where he left off with a clinical penalty at the Nou Camp.
A double from Pedro and another from Xavi completed the scoring as the unbeaten Catalans racked up their 17th victory in 18 games to move on to 52 points.
They are 11 points ahead of second-placed Atletico Madrid who were held to a 1-1 draw at Real Mallorca.
Atletico dominated but struggled without suspended top-scorer Radamel Falcao until Raul Garcia bundled in from close range in the 72nd minute but Kevin Garcia grabbed a scrappy equaliser for the hosts three minutes from time.
Champions Real stayed 16 points adrift of Barca in third after a topsy-turvy game at the Bernabeu overshadowed by Jose Mourinho's unpopular decision to drop captain and goalkeeper Iker Casillas to the bench for the second consecutive game.
Reserve keeper Antonio Adan was sent off after only six minutes, however, and Spain's number one came on as a substitute to a huge ovation from home fans, though it was stand-in captain Ronaldo who secured the win with his second-half double.
Barca welcomed coach Tito Vilanova back to the dugout after a throat operation just over two weeks ago and he watched his side destroy Espanyol in the opening half hour at the Nou Camp.
Andres Iniesta crossed low for Xavi to sidefoot home the opener after 10 minutes and Pedro netted his first from a Cesc Fabregas cut-back in the 15th.
The Spain forward scampered away on to a Sergio Busquets through ball in the 27th and dinked his shot over Francisco Casilla for the third and Fabregas went down for a penalty two minutes later.
Messi scored from the spot to rack up his 27th league goal this season and was also denied by the woodwork from a free-kick.
"The best news from today was that we saw Tito back in the dugout," Barca sports director Andoni Zubizarreta told Spanish television, after Vilanova made a quicker than expected return to duties.
Vilanova thanked everyone for their messages of support at a news conference.
"The first half-hour was spectacular," he said. "I didn't come out of the dugout because the team was doing well and my presence [on the touchline] wasn't necessary."
The Bernabeu whistled Mourinho when Adan was named in the starting line-up at the expense of fan favourite Casillas, behind a patched-up defence shorn of the suspended Sergio Ramos and the injured Pepe, Marcelo and Fabio Coentrao.
Real quickly took the lead though when Sami Khedira fed Karim Benzema in the area and the France striker turned to score.
The game had barely settled down when Adan misplaced a pass, raced out to make up for his error, and brought down Carlos Vela for a penalty.
Adan was sent off and Casillas was brought on to chants of "Iker, Iker" from the home fans.