Barca have 72 points with nine games left to play, and remain six ahead of Real.
After an aggressive start from Valladolid, Cameroon striker Eto'o played a slick one-two with Xavi and lobbed the goalkeeper for his 26th league goal of the season just before the break.
Coach Pep Guardiola only used Lionel Messi and Daniel Alves as substitutes with one eye on next week's Champions League quarter-final at home to Bayern Munich.
Malaga put Real under pressure in similar fashion in the late game but a burst from midfield by Argentine striker Higuain saw him score the only goal just after the restart.
Sevilla are third with 57 points after a first-half Frederic Kanoute penalty earned a 1-0 win at Recreativo Huelva.
Fourth-placed Villarreal were unable to cope with Almeria striker Alvaro Negredo as he inspired his side to a 3-0 home win.
The former Real Madrid youth team player netted his 17th of the campaign after seven minutes and set up Pablo Piatti and Mane for two more before half-time.
He hit the post after the restart just before Villarreal were reduced to 10 men when Robert Pires collected his second yellow card.
At the foot of the standings, Numancia grabbed a last-minute equaliser from the penalty spot to draw 3-3 in a thriller at Real Betis, and Copa del Rey finalists Athletic Bilbao ended a run of four successive defeats to beat Real Mallorca 2-1 at home.
Real Madrid had earlier cut the gap to three points with a 3-0 victory at home to Almeria, but a sumptuous first-half performance saw the Catalans bag four goals and regain their pre-weekend advantage.
The first came after 19 minutes when a Samuel Eto'o through-ball found Xavi in the box; the midfielder coolly slotted underneath the oncoming Inaki Goitia in the Malaga goal.
The second came six minutes later courtesy of a piece of genius from Lionel Messi, the Argentine beating three men before lashing the ball in from four yards.
Thierry Henry added to the goal-fest on 32 minutes, rounding Goitia after a clinical Xavi through-ball to finish with ease.
Eto'o completed the first-half rout, nutmegging the Mexican keeper after another assist from the impeccable Xavi on 43 minutes.
The second half was not much better for Malaga, with Barca continuing where they left off in the first.
Right-back Daniel Alves headed past Goitia on 51 minutes after a delightfully chipped through-ball from Iniesta before Eto'o grabbed his second of the night, tapping in after a cross from Henry on 57 minutes.
Barcelona then took their foot off the gas, cruising to the final whistle.
Malaga drop to eighth position on 43 points.
Real Madrid comfortably overcame a spirited Almeria side 3-0 in the Bernabeu.
The first half was an open affair, with both teams attacking at will. However Real always carried the greater threat and it was no surprise when they opened the scoring on 23 minutes.
Madrid's Brazilian full-back Marcelo unleashed an unstoppable drive from just outside the box, giving Diego in the Almeria goal no chance.
Both teams then had chances to add to the scoring but it was not until the 53rd minute that the next goal came. This time Dutch goal-machine Klaas Jan-Hunelaar got in on the act, smashing home from 12 yards after poor Almeria defending.
The striker than added a third on 66 minutes, finishing clinically after Diego could only parry a Robben shot into the path of the former PSV man.
The result leaves Almeria two points above the relegation zone while Real temporarily close the gap on rivals Barcelona at the top.
The 18-year-old Spain striker was handed a rare start with Samuel Eto'o and Thierry Henry on the bench and he did not disappoint, finishing off delightful passing moves for his first league goals of the season.
Until the diminutive Catalan's 53rd-minute opener, Almeria had frustrated their visitors with goalkeeper Diego Alves in fine form.
The Brazilian shot-stopper made brilliant first-half saves from Kader Keita, Andres Iniesta and Lionel Messi, and one incredible stop from a Gerard Pique header that was so powerful Alves ended up flying backwards into the goal while the ball spun to safety.
The hosts, meanwhile, were not only on the back foot and tiny winger Albert Crusat should have given them the lead when he raced clear from halfway only to panic and lob well over as Victor Valdes raced to the edge of his penalty area.
Barca took the lead seven minutes into the second half after a hypnotic spell of passing culminated in Messi rifling a shot off the post and into the path of Bojan, who slid the ball into the unguarded net with keeper Alves stranded.
He doubled the lead just over two minutes later after a quite spectacular piece of build-up play that included a give-and-go started by Daniel Alves that went via a flying flick from Iniesta and an audacious backheel by Messi, with Alves running on to the latter to set up Bojan for a deflected finish.
The finish was fortuitous but the prologue spectacular. There was little left for either side to say afterwards as the match fizzled out into a training-ground exercise that saw Alexander Hleb and Eidur Gudjohnsen given a chance to stretch their legs.
The win puts Barca on 67 points, with second-placed Real Madrid on 60, but with 11 games remaining - including a Clasico at the Bernabeu - Los Merengues still have everything to play for.
Real move on to 60 points with 11 matches remaining while Barca have 63 ahead of their game at Almeria after beating their ten-man opponents.
The visitors made the perfect start at Athletic Bilbao when Arjen Robben opened the scoring after running at Athletic's defence before sending a left-footed drive in off the crossbar.
The visitors doubled their advantage after 34 minutes when Gabriel Heinze nodded home Wesley Sneijder's dangerous inswinging free-kick.
However, just when it looked like Real were on course to close the gap on leaders Barca the home side struck back.
Within minutes of scoring at the right end, Heinze put through his own net after making a hash of clearing David Lopez's low driven cross.
The match erupted moments later when the lively Francisco Yeste was given his marching orders for foolishly bundling over Real keeper Iker Casillas.
Athletic were back on level terms before half-time when Casillas somehow failed to keep out Fernando Llorente's far post header in first-half injury time.
The home side's joy was short-lived after half-time with Klaas Jan Huntelaar continuing his good form by somehow squeezing his shot past the statuesque Gorka Iraizoz at his near post.
Athletic pushed forward in search from another leveller, but it was Real who scored next. The visitors broke through Robben and he picked out Huntelaar who finished with aplomb.
Juande Ramos' side added the icing on the cake late on when substitute Gonzalo Higuain converted from 12 yards out after Marcello was feeling in the penalty area.
Ten-man Valencia needed a late goal from Pablo Hernandez to rescue a 1-1 draw against Recreativo Huelva at the Mestalla.
Los Che have been poor of late and another two dropped points on Saturday means they have now gone five Liga matches without success.
Recreativo went ahead in the 55th-minute when Adrian Columnas lunged ahead of two Valencia defenders to poke a loose ball under Cesar Sanchez.
Valencia had Carlos Marchena sent off shortly after, but Valencia managed to secure a point from the contest thanks to Hernandez's leveller.
A Sergio Busquets header and a Lionel Messi penalty, both in the first half, gave Barca their first win in six outings in all competitions.
They opened up a six-point lead over chasing Real, whose 10-match winning streak came to an end against Atletico.
Diego Forlan put Atletico ahead before the break and Klaas-Jan Huntelaar levelled in the 57th minute.
The visitors, who beat Barca last weekend, missed a host of second-half chances to claim their first derby win since 1999.
Barca have 63 points with 12 matches left. Atletico remain fifth with 40 points, behind champions Real (57), Sevilla (47) and Villarreal (45).
The emotion of reaching their first Copa del Rey final in 24 years in midweek appeared to take its toll on Bilbao who were second best against their fellow finalists at the Nou Camp.
Barca suffered an early fright when Fran Yeste burst clear only to fire wastefully wide but in the 17th minute they went ahead when Busquets met Xavi's free kick from wide on the left with a powerful header.
The hosts then won a penalty when Andres Iniesta was bundled over as he dribbled into the area in the 32nd minute, Messi putting away the spot kick.
Barca threatened to cut loose after the interval. Iniesta lashed a shot against the post, Bilbao cleared a shot off the line and Samuel Eto'o rattled the crossbar.
Atletico were the more adventurous at the Bernabeu but Leo Franco was the busier goalkeeper until Sergio Aguero made his presence felt.
The Argentine executed a slick backheel to launch a counter-attack and after receiving a return pass he squared for Forlan to beat keeper Iker Casillas in the 38th minute.
After the break Real coach Juande Ramos brought on Gonzalo Higuain for Guti and he made an immediate impact, feeding Huntelaar on the edge of the area.
The Dutch striker turned his marker and fired high into the net, though television replays showed he had been in an offside position.
Atletico refused to wilt, Forlan hitting the post and substitute Florent Sinama Pongolle firing wide when well placed.
In the evening's late game, Villarreal took full advantage of Atletico's draw by beating struggling Espanyol 1-0 at El Madrigal.
Argentinian defender Fabricio Fuentes converted a 20th-minute penalty to open the Yellow Submarine between his side and fifth-placed Atletico to five points.
Barcelona coach Pep Guardiola has told the club's players and supporters not to panic after successive defeats cut their lead over Real Madrid to only four points.
Earlier in February La Liga leaders Barca were 12 points clear of Madrid.
But since their 2-0 Clasico defeat in Juande Ramos's first match in charge, Los Merengues have won 10 Liga matches on the trot, while Los Cules slumped to defeats at home to local rivals Espanyol and - despite leading 2-0 and 3-2 during the match - at Atletico Madrid.
"We have had a big advantage and Real Madrid have cut it back by eight points in three weeks. But we will continue forward," said Guardiola. "We lost a game which was up and down, very exciting and I have to give credit to Atletico but we will now continue as before.
"Atletico play a very direct style of football and it caused problems. It was a game with plenty of chances, typical of an Atletico Madrid versus Barcelona game."
Atletico coach Abel Resino, whose team occupy fifth place, singled out his players' battling qualities.
"Against a good side we had a first half where we maintained our composure despite the onslaught. Each day I feel as though we are getting better and the team has shown character," he said.
"We never eased off despite being 2-0 down. Sergio Aguero was sensational and his attitude has been contagious."