With one minute left in the game, Javier Saviola's shot hit the post, and former Barcelona player Fernando Navarro deflected the ball into his own goal.
The hero for Barcelona was goalie Victor Valdes, who stopped Jonas Gutierrez's penalty kick in the first half after he took down the Argentine midfielder in the penalty area.
Second-place Sevilla fell to Valencia, 2-0. Spain international David Villa scored twice for Valencia, whose goalie Santiago Canizares also stopped a penalty kick, producing an outstanding save to turn Enzo Maresca's powerful kick on to the post.
On Saturday, Real Madrid blew a chance to at least temporarily take over La Liga lead when it fell to Racing Santander, 2-1.
Two late penalties from Racing's Ezequiel Garay, the winner coming just seconds before the end of regulation time, ended an eight-game unbeaten streak for Real Madrid, which had defenders Ivan Helguera and Alvaro Mejia sent off in the final minutes of the game.
La Liga Race (8 games to play):
1. Barcelona 59 points;
2. Sevilla 55;
3. Real Madrid 54;
4. Valencia 53.
Lyon remained just one win away from clinching a record sixth consecutive title after a 1-0 victory over lowly Sedan on 20-year-old Hatem Ben Arfa's goal -- just one of a record-low eight goals scored in Ligue 1 play over the weekend. Toulouse beat Auxerre, 2-0, to move into second place, while Lens' 0-0 tie at last-place Nantes eliminated it from contention. Lyon can seal the title when it plays Rennes on Wednesday.
Ligue 1 Race (6 games to play):
1. *Lyon 69 points;
2. Toulouse 52.
(Has game in hand.)
The top four teams in the Bundesliga race stayed in the same places as they all won for the second week in a row. After completing a five-game suspension, Brazilian Lincoln celebrated his first game back with leader Schalke 04 by scoring the third goal in a 3-0 win at Mainz. German internationals Kevin Kuranyi and Gerald Asamoah also scored. Werder Bremen (2-0 over Borussia Dortmund), VfB Stuttgart (2-1 winner over Hannover) and Bayern Munich (2-1 winner over Bayer Leverkusen also won).
Bundesliga Race (5 games to play).
1. Schalke 04 59 points;
2. Werder Bremen 57;
3. VfB Stuttgart 55;
4. Bayern Munich 53.
Inter Milan closed to within one win of being crowned champions of Serie A for the second consecutive season when it came from behind to draw, 2-2, with Palermo thanks to goals by Julio Cruz and Adriano after the break. Palermo dropped to fifth place -- out of the Champions League zone -- as AC Milan moved into fourth place for the first time this season with a 3-1 win over Messina thanks to goals by Kaka, Giuseppe Favalli and Ronaldo.
Serie A Race (7 games to play):
1. Inter Milan 81 points;
2. Roma 65.
PSV ended a four-game winless streak with a 2-0 win over Twente that kept it two points ahead of AZ and Ajax. Peru international Jefferson Farfan scored twice in a minute for PSV. Ajax beat NAC, 2-0, while Alkmaar beat Vitesse, 1-0.
Eredivisie Race (2 games to play):
1. PSV 71 points;
2. AZ 69;
2. Ajax 69.