Zamora had a goal ruled out for offside on 16 minutes but made it 1-0 to Fulham on 42 when Bjorn Helge Riise’s cross from the right found Zamora unmarked in acres of space at the far post, from where he steered home.
It was a case of deja vu two minutes later, with Riise again supplying a perfect right-flank cross for Zamora, who finished with his head this time.
It was 2-1 on 62, when Alexander Frei converted a spot-kick that was awarded for a harsh handball by Chris Smalling.
Zoltan Gera made it 3-1 on 77 with a neat sidefooted finish.
And although Marco Streller’s headed goal on 87 set nerves jangling, the visitors held firm for a deserved and impressive victory.