The result marks the first time since Arsenal's 2004-05 "Invincible" season that the club have started the season with four consecutive league wins, leaving Mikel Arteta's side two points clear at the top of the table.
Arsenal dominated the first half, but it was striker Aleksandar Mitrovic who broke the deadlock as he continued his fine vein of form in front of goal, netting his 100th goal for Fulham. The 27-year-old snapped the ball from Arsenal defender Gabriel, who was dawdling on the ball on the edge of his own 18-yard box, and slotted past goalkeeper Aaron Ramsdale. The strike marks Mitrovic's fourth league goal this season.
Arsenal were not to be denied, though, as Martin Odegaard hit back minutes later when he picked up a pass from Bukayo Saka on the edge of the box and struck an attempt at goal that deflected past goalkeeper Bernd Leno.
The hosts pushed for a winner and were rewarded just five minutes from time when Gabriel pounced and prodded home after Leno failed to deal with an in-swinging corner.