Real Madrid remain two points behind La Liga leaders Atletico Madrid after late goals from Eder Militao and Casemiro sealed victory over Osasuna.
Centre-back Militao eventually ended Osasuna’s resistance when he headed in Isco’s corner after 76 minutes.
Fellow Brazilian Casemiro then met Karim Benzema’s pass to confirm the points four minutes later.
Atletico Madrid had stretched their lead at the top to five points with victory at Elche earlier on Saturday.
Barcelona, who missed the chance to go top in losing to Granada on Thursday, can move level on points with Real with victory against Valencia on Sunday, while fourth-placed Sevilla can stay within three points of the summit if they beat Athletic Bilbao on Monday.
In his first start since January, Eden Hazard went close to an opener but was denied by a fingertip save from Sergio Herrera.
The Osasuna goalkeeper also kept out Militao’s powerful first-half header, while Chimy Avila’s finish was ruled out for offside as Osasuna threatened before the break.
Real struggled to create opportunities in a second half which saw centre-back Raphael Varane leave the field through injury, until Militao delivered with his side’s first effort on target after the restart.
With the visitors deflated, Casemiro’s finish ensured Real maintain the pressure on city rivals Atletico before making the trip to Premier League Chelsea for the second leg of their Champions League semi-final on Wednesday.
With the tie poised at 1-1, Zinedine Zidane’s side travel to Stamford Bridge looking to reach the Champions League final for the fifth time in eight years.