Fresh off winning the Club World Cup on Saturday, the champions Real Madrid will now face Elche in an attempt to close the gap.
Despite a close and intense match at Estadio de la Ceramica, Barcelona was able to withstand Villarreal's attack, continuing their quest for their first LaLiga title since 2019.
Defender Ronald Araujo, in particular, made several outstanding blocks and interceptions to preserve Barcelona's lead, resulting in another clean sheet.
With 16 shutouts in 21 league games, this season and only 7 goals conceded, Barcelona's defence is proving to be strong.
"We're working really hard (defensively)," Araujo said in an interview with Movistar.
"We had to improve from last season when teams scored a lot of goals against us. We're now doing well in the back and the midfielders, forwards, and defenders are all working together to keep clean sheets. It's the fruit of our hard work."
Although Robert Lewandowski missed a key opportunity early on in the game, he made up for it by setting up Pedri's opening goal after 18 minutes.
The 20-year-old midfielder scored his fourth goal in seven games across all competitions with a perfectly executed team move.
Villarreal had a chance to level the score when Jose Luis Morales failed to connect with a volley, but couldn't capitalize on the opportunity.
Despite Villarreal's efforts to attack the leaders, Barcelona was able to hold on for the win. Lewandowski was stopped by veteran goalkeeper Pepe Reina on multiple occasions, including a cheeky pass from Frenkie de Jong.
Barcelona will now face Manchester United in the Europa League on Thursday.
Villarreal, currently in eighth place, has now lost three consecutive league games.
"When things don't go well, you have to work," said Villarreal defender Juan Foyth. "I am confident that we will bounce back as a united group and fight for a high league position."