The Bees struck twice in a seven-minute span of the second half as Shandon Baptiste's left-footed half-volley was followed by Sergi Canos' low finish after Leeds had given away possession.
Brentford thought they had picked up all three points until Patrick Bamford, returning from injury, headed home a corner that went off of the bar to salvage a result.
Story of the match
Both teams spent the opening 15 minutes looking for a way through as well as trying to control possession of the ball.
The Whites were forced into an early change as skipper Liam Cooper was forced off with an injury after challenging for the ball.
Just before the half-hour mark, Leeds went in front. Raphinha whipped in a cross that a sliding Roberts met to fire home.
He nearly doubled his tally when Dan James played him in, but Brentford goalkeeper Alvaro Fernandez tipped his shot over the bar.
Coming out of halftime, the hosts remained on the front foot. James won a free-kick just outside the box, but Fernandez saved Luke Ayling's header with his fingertips.
Brentford equalized when a cross by Canos was deflected into the path of Baptiste, who beat Ilian Meslier low and hard into the bottom corner.
Canos nearly put the Bees in front as the ball fell for him in the box, but Ayling got in a block to see off the danger.
After misfiring on another attempt, the Spaniard put the visitors ahead as Baptiste played Canos in and he finished into the roof of the net.
Leeds pushed for an equalizer, Stuart Dallas going close with a curling shot and Fernandez saved from Roberts.
In the fifth minute of injury time, the Whites pushed everyone forward and from a corner, Bamford converted Raphinha's ball into the box, beating Fernandez.
Man of the match: Raphinha
The Brazilian was again at his very best, providing a constant threat with enterprising play and pinpoint crosses, setting up both goals.