World Cup finalists Hugo Lloris and Cristian Romero were back for Spurs, but the former was at fault for Buendia’s opener and Luiz was able to wrap up the points with a fine 73rd-minute finish.
It extended Unai Emery’s unbeaten record against Tottenham to four games and inflicted more misery on Antonio Conte’s side, who have conceded first in their last 10 matches and now dropped to fifth in the Premier League.
Spurs struggled to create chances throughout and were booed off after a third home defeat from their last five games.
While Tottenham were boosted by the return of Romero and Lloris, Dejan Kulusevski became the latest player unavailable to Conte due to a minor muscle injury.
Romero’s compatriot Emiliano Martinez was also at Tottenham Hotspur Stadium, but only named on the Villa bench a fortnight on from his heroics in Lusail.
Villa boss Emery had never previously lost to slow-starters Spurs and nearly watched Ollie Watkins fire the visitors ahead when he raced through down the left but he dragged his 14-yard shot wide.
It was not a sign of things to come with a lacklustre opening half occurring with as many yellow cards as shots.
Each of Tottenham three centre-backs received bookings from John Brooks in a rash nine-minute period with Ben Davies a touch fortunate after lunging into a tackle with Ashley Young.
Chances had been few and far between before Young was well placed to clear Harry Kane’s header off the line in the 40th minute after Ivan Perisic had rounded Robin Olsen in the Villa goal.
It woke up Conte’s side with Son Heung-min, who chucked away his protective mark midway through the half, curling a free-kick into the arms of the Swedish goalkeeper soon after.
Despite making it to the break without conceding, Tottenham’s habit of falling behind continued five minutes into the second period.
Lloris was at fault in his first appearance since the World Cup final and Buendia profited.
A Luiz shot from range was spilled by Lloris and the alert Watkins reacted quickest to tee up Buendia, who slotted home from close range to help make up for his Qatar disappointment after he failed to make Argentina’s squad.
Perisic sent an effort over on the turn moments later before Conte turned to his limited options on the bench and introduced Ryan Sessegnon in place of Bryan Gil after he struggled to make an impact on his first Premier League start.
Matt Doherty, Spurs’ other wing-back, prevented Villa from doubling their tally with 64 minutes on the clock when his sliding tackle thwarted Watkins.
Kane fired wide on the half volley soon after before he made a costly error when the away side doubled their advantage.
Boubacar Kamara won possession from the Spurs forward and John McGinn exchanged passes with Luiz, who poked home to spark chants from the home faithful against chairman Daniel Levy.
Conte made a flurry of late substitutions with Pape Sarr being brought on for his debut and Djed Spence earning a rare appearance but boos greeted the full-time whistle.