Ashley Barnes scored his first goal in more than a year as Burnley beat Wolves at Turf Moor to move three points clear of the Premier League relegation zone.
It was a convincing performance from Sean Dyche’s outfit, who have now lost only once in their past seven games and are unbeaten in four matches.
Barnes nodded in at the back post to put the hosts ahead from Charlie Taylor’s cross following a swift counter-attack in the first half.
Chris Wood then reacted quickest to thump in from close range and double Burnley’s lead as Wolves failed to clear a free-kick after the break.
Teenager Fabio Silva fired in from the penalty spot for his first Wolves goal late on but the hosts were able to see out their victory.
It is only the second time Burnley have scored more than once in a top-flight game this season, and they could have had more.
Josh Brownhill whipped an effort on to the crossbar and Rui Patricio saved well to deny Wood after neat footwork from the New Zealand forward.
In contrast, Wolves struggled to seriously trouble a resilient Clarets back four before their late spot-kick and Nuno Espirito Santo’s side remain 11th in the table.
Burnley climb to 16th, with a game in hand on those around them.
Clarets hitting form at Christmas
Burnley boss Dyche continues to eke the best out of his squad and both he and the club’s potential new owners will be delighted by their recent revival after a slow start to the season.
Dyche will hope whoever buys the club will do so in time for some January squad investment, but in the meantime his team are hitting form.
Burnley were the division’s lowest scorers and had managed just six goals in 12 games before this fixture, but Dyche promised the “stats will start paying us back”.
He was proved right as both his strikers found the net, with Barnes heading in for his first goal since a 3-0 win at Watford in November last year and Wood on target for his third goal of the season.
It was the first time the hosts have scored twice in a Premier League game at Turf Moor since February, but no less than they deserved.
Substitute Josh Benson’s foul on Silva in the penalty box made it an unnecessarily nervy last few minutes.
But before that Ben Mee and James Tarkowski once again looked almost unbeatable in the heart of the Clarets’ defence as they limited the visitors to very few opportunities.
Silva steps up but too late for Wolves
Wolves arrived at Turf Moor amid their best start to a top-flight season in 41 years, but they have at times struggled to build momentum this term.
The visitors will once again be frustrated they could not back up an impressive win over Chelsea with something against Burnley.
The absence of Raul Jimenez remains a problem for boss Nuno and the Portuguese opted to leave club-record signing Silva on the bench against a rugged Burnley back four.
Instead, he handed American Owen Otasowie, who came on for his debut against Chelsea in midfield, a first Premier League start and used the 19-year-old as the focal point of the visitors’ attack.
But Wolves struggled to break down Burnley and £35m striker Silva and winger Adama Traore were brought on at the hour-mark.
The visitors had 71% of the possession in the second half but only a long-range Ruben Neves volley troubled Nick Pope, while Daniel Podence had an effort deflected over.
That was until the 89th minute, when Portugal youth international Silva won a penalty for his side and converted from the spot to become Wolves’ youngest score in the Premier League at 18 years and 155 days old.
‘The referee is not good enough to whistle’
Burnley boss Sean Dyche speaking to BBC Sport: “I thought it was deserved. Generally over the last five or six games performances have been good, including tonight.
“We created some great chances and, hyper-critically, we could have had the game sealed earlier on. It is a very important result, the players have worked hard.
“Sometimes you have to change things and Ashley (Barnes) has been sharp in training. I believe stats start coming your way and they have. We have been creating chances.”
Wolves boss Nuno Espirito Santo to BBC Sport: “Football is a physical game, a game of contact and referees taking the decisions and being fair, but the referee is not good enough to whistle, Lee Mason is not good enough.
“The way he handles the game, it isn’t about the major, crucial decisions, it is about how he handles the players, both teams are always arguing the decision. He must improve because the game requires good refereeing and good handling of the game so the players can perform.
“It is his job, he has to improve, he has to get better. When we saw the nomination, we did not understand it because he is a point of distraction. He worsens the flow of the game.”
Clarets finally among the goals - the stats
- Burnley have won two of their last three games in the Premier League (drawing the other), one more than they managed in their previous 11.
- Since the start of 2018-19, Wolves have failed to win any of their three Premier League away games against Burnley.
- Burnley scored as many in this game as in their first five home games this season combined.
- Chris Wood has netted 17 goals in the Premier League since the start of last season, more than twice as many as any other Burnley player in this period (Jay Rodriguez, eight).
- Owen Otasowie is the third different teenage player to start for Wolves in the Premier League this season (after Silva and Rayan Aït-Nouri).
- Dwight McNeil has appeared in each of Burnley’s last 71 games in the Premier League - no outfield player is on a longer current run of consecutive appearances in the competition (joint-most, along with James Ward-Prowse).
Burnley visit Leeds United on Sunday (12:00 GMT), while Wolves host Tottenham later that day (19:15).
- 12BradySubstituted forPietersat 69′minutes
- 18WestwoodBooked at 36mins
- 11McNeilSubstituted forBensonat 87′minutes
- 10BarnesSubstituted forRodriguezat 82′minutesBooked at 90mins
- 11Rui Patrício
- 22Nélson Semedo
- 8NevesSubstituted forVitinhaat 76′minutes
- 28João Moutinho
- 3Aït-NouriSubstituted forTraoréat 60′minutes
- 54OtasowieBooked at 45minsSubstituted forFábio Silvaat 60′minutes
- 17Fábio Silva
- Lee Mason
Match ends, Burnley 2, Wolverhampton Wanderers 1.
Second Half ends, Burnley 2, Wolverhampton Wanderers 1.
Corner, Wolverhampton Wanderers. Conceded by Josh Brownhill.
Attempt missed. Romain Saïss (Wolverhampton Wanderers) left footed shot from a difficult angle on the left is close, but misses to the left. Assisted by Adama Traoré with a cross.
Jay Rodriguez (Burnley) is shown the yellow card for a bad foul.
Adama Traoré (Wolverhampton Wanderers) wins a free kick in the defensive half.
Foul by Jay Rodriguez (Burnley).
Offside, Wolverhampton Wanderers. Vitinha tries a through ball, but Adama Traoré is caught offside.
VAR Decision: No card change João Moutinho (Wolverhampton Wanderers).
Foul by João Moutinho (Wolverhampton Wanderers).
Josh Brownhill (Burnley) wins a free kick on the left wing.
Foul by Adama Traoré (Wolverhampton Wanderers).
Josh Brownhill (Burnley) wins a free kick in the defensive half.
Goal! Burnley 2, Wolverhampton Wanderers 1. Fábio Silva (Wolverhampton Wanderers) converts the penalty with a right footed shot to the bottom left corner.
Penalty Wolverhampton Wanderers. Fábio Silva draws a foul in the penalty area.
Penalty conceded by Josh Benson (Burnley) after a foul in the penalty area.
Substitution, Burnley. Josh Benson replaces Dwight McNeil because of an injury.
Romain Saïss (Wolverhampton Wanderers) wins a free kick on the left wing.
Foul by Jay Rodriguez (Burnley).
Attempt blocked. Nélson Semedo (Wolverhampton Wanderers) left footed shot from outside the box is blocked. Assisted by Daniel Podence.