Villarreal is four points behind co-leaders Barcelona and Atletico Madrid and one point ahead of Madrid before they play later this weekend.
"We had 10 scoring chances alone in the first half and two of our three goals were scored by midfielders," said Villarreal coach Marcelino Garcia. "It's satisfying because it means we don't rely on the scoring form of our strikers. This team is daring and we take advantage of that to score a lot of goals."
Granada entered the game tied for the league's best defense with only five goals allowed through seven rounds. But Villarreal's flowing attack had little trouble picking it apart, while Granada was limited to a pair of shots by substitute strikers Ivan "Riki" Rico-Sanchez and Odion Ighalo in the 57th and 58th.
Osasuna bossed the match in Malaga early on, arriving in waves and only being kept from a greater winning margin by Malaga goalkeeper Willy Caballero.
Caballero couldn't keep out striker Oriol Riera's second effort in the 23rd after he had blocked his first try from a dipping cross launched by Sisinio "Sisi" Gonzalez.
Malaga coach Bernd Schuster sent on reinforcements at halftime and his team greatly improved, but Osasuna held on to break Malaga's five-game unbeaten streak.
This weekend, Barcelona and Atletico both search for their eighth win in as many rounds with matches against Valladolid and Celta Vigo, respectively.
Also, it's: Levante vs. Real Madrid, Elche vs. Espanyol, Rayo Vallecano vs. Real Sociedad, Sevilla vs. Almeria, Getafe vs. Real Betis, and Athletic Bilbao vs. Valencia.