Jack Harrison put the Whites in front in the 39th minute, beating Wayne Hennessey from inside the box.
Maxwel Cornet equalized for the visitors with a superbly taken free kick.
Leeds went ahead for good when Stuart Dallas scored with his left foot with 13 minutes to play and Dan James added a third in stoppage time.
The Whites move eight points clear of the bottom three while the Clarets remain in 18th, still two points behind Watford, but with a game in hand.
Story of the match
With ten minutes left in the first half, Ilian Meslier saved from Chris Wood's flick volley and at the other end, Roberts headed wide from a Luke Ayling cross.
A spectacular solo effort by Harrison led to the Whites'
opener. He charged down a clearance by James Tarkowski, sprinted into the box and beat Hennessey.
The hosts continued to pile on the pressure, Hennessey saving from Roberts after Junior Firpo shot over the bar.
Following the restart, the Clarets top scorer Cornet brought them level, winning a free-kick high up the pitch, taking it himself and curling it past Meslier.
James sent a cross all the way across the box that found Raphinha, but his first-time shot found the side netting.
Leeds found a winner in the 77th minute, a quick corner from Raphinha to Mateusz Klich saw the Pole feed Dallas, who found the top corner.
In stoppage time, Joe Gelhardt sent in a lovely cross that James headed home, the scoreline reflecting the Whites dominance.
Man of the match: Stuart Dallas
He didn't just score the match-winner, making five tackles and three interceptions. He's got the skills to deal with Burnley's physicality and he showed it today.