Fran Escriba's men came into the game having conceded just 10 goals on their travels all season, fewer than any side in LaLiga.
And fittingly, it was Barca's best that settled the contest as Neymar, Lionel Messi and Luis Suarez each netted.
Cedric Bakambu had briefly caused concern with an equaliser that exposed the defensive flaws that have hampered Luis Enrique's men all season.
But the first of Messi's two strikes brought up a century of goals between himself, Suarez and Neymar - the Argentina star having scored 51 of them in another season of mesmerising brilliance after following up a first-half strike with a late penalty.
100 - Barcelona’s MSN have scored 100 goals in all competitions this season (Lionel Messi 50, Luis Suárez 34 and Neymar 16). Lethal. pic.twitter.com/qjDuK0wVEr— OptaJose (@OptaJose) May 6, 2017
Playing before Madrid's trip to relegated Granada, Barca kept up their end of the bargain to go three points clear of their fierce rivals, but it is a fixture that ought not to hold fear for Zinedine's Zidane men - who also hold another game in hand over the Catalans.
Each of the goals indicated exactly what Barcelona will need in the run-in - Neymar's quick feet, Messi's dazzling dribbling and Suarez's brute power - and Luis Enrique's stony insistence that Barca will give their all to overhaul Madrid was boosted by an 11th home win in a row - their best sequence in LaLiga under his stewardship.
Villarreal refused to be drawn into Barcelona's trap early on and the hosts' sedate pace of play was summed up when Messi wafted a 20-yard free-kick into Andres Fernandez's arms, but they raised the tempo to take the lead a minute later.
Messi worked half a yard in the area and his deflected shot fell kindly for Neymar - perhaps inches offside - and the Brazilian smartly prodded home his 10th league goal of the season.
Bakambu was guilty of killing a Villarreal chance when his pass to Roberto Soldado was too heavy but the striker kept his cool shortly after when Barca's risky positioning on halfway was split by a single pass and the DR Congo international raced clear to finish.
Barca's attack had renewed sharpness after conceding and Messi dragged across the face of goal before skinning Roberto Soriano and crossing for Gerard Pique, who could only nod wide on the stretch, but Villarreal retained a threat on the break and Soldado headed a similar opening off-target.
But the hosts did take a lead into the interval with a goal typical of Messi, the Argentina captain skirting around Villarreal's defensive line before clipping a shot across Fernandez and in - aided by a deflection off Mario.
50 - Lionel Messi is the first player from the Top 5 European Leagues to reach 50 goals this season in all competitions. Crucial. pic.twitter.com/cn4e8EvNtn— OptaJose (@OptaJose) May 6, 2017
Messi saw a right-footed blast punched clear by Fernandez but he was powerless to keep out Suarez when the Uruguayan surged down the right channel and blasted a shot through the goalkeeper's grasp.
Cruising to victory, Barca put the cherry on top with a goal oozing with class as Neymar scooped the ball over Mario before crossing to Suarez, whose shot was handled by Jaume Costa and Messi delicately dinked a Panenka down the middle to cap a satisfying outing.