A below-par Barcelona escaped the Anoeta with a point after Real Sociedad were denied a clear winner in a 1-1 draw.
At a venue where Barca last won in 2007, Luis Enrique's men were thoroughly outplayed in a result that leaves them six points behind leaders Real Madrid ahead of next weekend's El Clasico at the Nou Camp.
After Willian Jose opened the scoring, the largely anonymous Lionel Messi levelled, but it was a goal that did not count that proved the main talking point as substitute Juanmi was ruled offside when turning home after Carlos Vela had struck a post, even though replays showed Gerard Pique played him onside.
Atletico Madrid responded to their derby defeat with a convincing 3-0 victory over Osasuna as Diego Godin and Kevin Gameiro scored within two minutes of each other.
Diego Simeone's side had been beaten 3-0 by rivals Real, having lost to Sociedad seven days earlier, but they got back on track against their struggling hosts.
Atleti had goalkeeper Jan Oblak to thank for not falling behind as he saved an early penalty from Roberto Torres. Godin then nodded in a Koke corner to break the deadlock and former Sevilla striker Gameiro soon added a second after collecting Angel Correa's scooped pass, with substitute Yannick Carrasco adding a third in stoppage time.
Villarreal were beaten at home in the league for the first time this season as Alaves pulled off a shock 2-0 success.
The Yellow Submarine had won five straight games on home soil but were undone by two goals in the opening 17 minutes.
Ibai grabbed the first with a close-range finish after Deyverson's header came back off a post before Levante loanee Victor Camarasa added a second, poking home after some shambolic Villarreal defending.
Former Liverpool striker Iago Aspas took his tally for the season to 10 with club and country as Celta Vigo extended their unbeaten run at home to eight games with a 3-1 win over bottom-of-the-table Granada.
Aspas scored the first, his ninth in as many games, then set up Theo Bongonda to open his account for the season against a Granada team without a win all year.
They pulled one back when Artem Kravets seized on an error from Gustavo Cabral, but substitute Pape Cheikh Diop's third ensured Celta's fine run at Balaidos continued.Reuse content