La Liga Wrap: Title race rages on as top three all win
Atleti faced a tricky test away to UEFA Champions League hopefuls Athletic Bilbao and they came away with a slender 2-1 win from San Mames.
Ernesto Valverde's side threatened to halt Atleti's streak of four consecutive Liga victories with just six minutes gone as Iker Muniain capitalised on some questionable defending with a fine lob.
However, Diego Costa levelled with a neat finish for his sixth goal in five games across all competitions as the sides went into the break level.
Koke scored the all-important goal with a header 10 minutes after the interval, and Aymeric Laporte saw red for the hosts in the closing stages, ending any hopes of a late comeback.
The result leaves Atleti a point above Barcelona, who were 1-0 winners at Espanyol, while Bilbao remain in the last Champions League spot.
Real produced an emphatic response to their back-to-back defeats against Barca and Sevilla as they hammered Rayo Vallecano 5-0.
Gareth Bale silenced his critics with two goals and an assist, with Cristiano Ronaldo, Daniel Carvajal and Alvaro Morata also on target at the Santiago Bernabeu.
Barca's Catalan derby triumph was far less convincing as a late Lionel Messi penalty sealed the points for Gerardo Martino's side.
That was after Javi Lopez had been penalised for handball, and Espanyol were further aggrieved when goalkeeper Kiko Casilla received a red card for handling outside the area seven minutes from time.
Sevilla saw a six-match winning run in the league ended as they were defeated 1-0 by Celta Vigo at Estadio de Balaidos.
The hosts dominated possession, but Unai Emery's men were guilty of squandering some very good chances, particularly Carlos Bacca and Vitolo.
The match looked set to end goalless, but Nolito netted an 87th-minute penalty after Federico Fazio was controversially penalised for handball.