Atletico Madrid missed the chance to climb above Espanyol into fifth when they were held 0-0 at home by Racing Santander.
Atletico are sixth with 27 points from 17 matches, one behind Espanyol who lost 2-1 at fourth-placed Valencia (31) on Sunday.
Real Mallorca were 3-0 winners at home to Hercules on Monday and are ninth. A late goal from midfielder Braulio snatched a 2-1 triumph for Real Zaragoza over visiting Real Sociedad that lifted them off the bottom of the table.
Zaragoza are 18th, level on 13 points with 19th-placed Almeria.
Catala put Villarreal ahead in the 22nd minute when Almeria failed to track the defender's run and he headed Valero's curling free kick in off the underside of the crossbar.
Valero added to his assist with a goal in the 58th as he struck the ball over the Almeria wall and inside the near post.
Champions Barcelona took a five-point lead over Real Madrid following their 2-1 win over Levante at the Nou Camp on Sunday.
- Related links