Bobby Zamora started on the left, Matthew Etherington on the right, with Nigel Reo-Coker playing off Marlon Harewood up front.
The system was soon switched to employ Harewood on the right with Zamora up front and Etherington in his more customary position on the left.
Chelsea drew first blood, with James Walker parrying a Mateja Kezman volley for a corner after Rufus Brevett had blocked Arjen Robben's shot.
At the other end, Bobby Zamora saw an emphatic shot from distance go over the bar before a saving tackle at the other end saw Brevett deny Joe Cole at the expense of a corner.
Shortly afterwards, Cole had a shot saved before he then set up Mateja Kezman who rounded James Walker - but his touch took him too far and Anton Ferdinand was able to pick up the pieces.
Arjen Robben then squared the ball for Geremi to slide the ball over, and Adam Nowland tried his luck from distance following a short Matthew Etherington free kick but shot over.
Zamora shot just wide before Geremi struck a free kick straight at Walker; shortly afterwards he shot wide from an acute angle.
Cole once again tested Walker, who parried his shot for a corner; at the other end, Etherington was denied by Carlo Cudicini diving at his feet as he raced through.
Kezman then had a free header which he put wide from Geremi's cross.
The first half ended with one or two tempers fraying in a hitherto sporting contest; Marlon Harewood caught Cudicini as he jumped for the ball and several players gathered round.
Celestine Babayaro flicked out a boot at Harewood as the players walked away but the referee, Andy D'Urso, didn't spot the incident.
After the break, Steve Lomas shot just wide from distance, while Walker denied Kezman with a superb stop before Brevett cleared.
Kezman headed a dangerous Tiago cross wide before Cole once again forced a superb save from Walker with a venomous shot that Walker pushed round the post for a corner.
Kezman then broke the deadlock - and got his first goal for Chelsea into the bargain - when he latched onto a clever precision pass from Joe Cole to slot the ball home just inside the post.
Damien Duff replaced Joe Cole as Mark Noble came on for Adam Nowland and soon after Frank Lampard replaced Scott Parker.
Alan Pardew moved Harewood alongside Zamora, with Reo-Coker switching to the right and West Ham moving to a traditional 4-4-2.
Tomas Repka conceded a penalty when he challenged Robben just inside the box; his angry reaction to Robben's fall earned him a booking after several players gathered round.
After a long delay, Lampard stepped up against Walker - and over 6,000 West Ham fans in the Matthew Harding stand - and Walker blocked the spotkick, to their delight.
Don Hutchison replaced Zamora up front as West Ham chased the equaliser, and Sergei Rebrov then came on for Etherington.
Eidur Gudjohnsen, who had replaced Arjen Robben, glanced a Frank Lampard free kick onto the bar, but Anton Ferdinand nearly earned West Ham a late equaliser when he, too, headed a Brevett cross onto the bar.
It was to be West Ham's last chance - but at least the Hammers faithful could go home with their heads held high.
James Walker once again played in place of Steve Bywater for the Carling Cup, while Adam Nowland, back on loan from Gillingham, replaced Sergei Rebrov in the starting line-up.
Anton Ferdinand came in for the injured Malky Mackay at centre half, Carl Fletcher and Calum Davenport were cup-tied, while Chris Powell was not allowed to play by Charlton.
TEAM: Walker, Mullins, Repka, Ferdinand, Brevett, Etherington [Rebrov], Lomas, Nowland [Noble], Zamora [Hutchison], Reo-Coker, Harewood.
Subs unused: Bywater, Cohen.