The visitors’ seven-game unbeaten run in La Liga was ended, leaving them three points behind fourth-placed Sevilla, having played two matches more.
Julen Lopetegui’s Sevilla face sixth-placed Real Betis in the Seville derby later on Sunday.
Granada moved up to eighth thanks to defender German Sanchez’s 52nd-minute goal.
Atletico Madrid lead city rivals Real Madrid by six points at the top of the table after their goalless draw at Getafe on Saturday, when Real beat Elche.
Third-placed Barcelona could move within four points of Atletico when they host bottom side Huesca on Monday.