Brentford's Josh King played a loose ball across the box, which was intercepted by Mikkel Damsgaard. The Dane then scored with a clinical finish past Bernd Leno. Fulham struggled to recover, and could have conceded a second goal when Kevin Schade was left one-on-one with Bernd Leno, but the German was forced wide and couldn't find the target.
Despite their struggles, Fulham continued to press forward and were unlucky not to equalize when Caoimhín Kelleher spilled Ryan Sessegnon's powerful shot, but Rodrigo Muniz's attempted finish rose over the bar. However, the Cottagers persevered and turned the game around with two goals in quick succession.
Alex Iwobi equalized with a fine finish after a chaotic sequence of events inside the box, and then provided a clever assist for Harry Wilson to score a beautiful left-footed finish. Five minutes into the second half, Fulham extended their lead when Sessegnon's cross was diverted into his own net by Ethan Pinnock.
The hosts looked like they had sealed the win, but Brentford's Rodrigo Muniz scored a goal that was initially given, only to be overturned by VAR for a foul on Nathan Collins. With time running out, Keith Andrews' side struggled to mount a comeback, and Fulham saw out the game comfortably, moving up to seventh in the table.
The win also marked a rare recent victory for Fulham in a London derby, with only three wins in their last eight games against capital clubs. Brentford, on the other hand, suffered back-to-back league defeats at Craven Cottage for the first time since January 1954, and sit 17th in the Premier League table.