© Getty Images
Palace were dealt a blow before a ball was even kicked when Joe Ledley, who was named in the original starting XI, picked up a injury during the warm-up and was replaced in the team by Stuart O'Keefe.
However, when his teammates made forward runs beyond him, Cole found them and his cushioned header fell into the path of Cresswell in the 24th minute, but the left-back's shot was deflected wide.
The chance seemed to spark the visitors into life and, two minutes later, Mauro Zarate found himself free at a corner but his effort fell straight into the grateful arms of Speroni.
With the away side in the ascendancy, Zarate got the goal that the Hammers deserved in the 34th minute. After Mark Noble's initial shot was blocked, the Argentine sent a 20-yard strike arrowing into the top corner to make it 1-0.
Just three minutes later, Stewart Downing doubled their lead with a controlled finish into the far corner following a surge across the box.
A West ham win should have been assured just two minutes after the restart when Speroni fumbled a corner, but James Tomkins sent his header against the bar.
© Getty Images
A minute later, Chamakh collected Jedinak's flick-on and crashed a powerful effort into the back of the net to half the deficit.
Summer signing Frazier Campbell seemed certain to draw his side back on level terms when he raced away from the West Ham defence, but the forward lost his footing at the crucial moment and the chance was squandered.
Shortly afterwards, Damien Delaney failed to deal with a high ball and Cole was left with the simple task of slotting the ball home from close range to restore his side's two-goal lead.
The fighting spirit so synonymous with Tony Pulis's tenure at Selhurst Park was severely lacking as West Ham were able to coast through the final 25 minutes, and Diafra Sako even came close to extending West Ham's lead in the closing stages, but Speroni made a good save from the debutant's header.