Barring the slow start, Chelsea light up the Bridge when Eden Hazard sliced through the defence to find the bottom corner 24 minutes in.
Luckily, the visitors were spared from falling further behind four minutes later, as Gonzalo Higuain, in for Olivier Giroud, found the post from an acute angle.
Trailing by a single goal margin, West Ham searched hard and low for the equaliser but failed to get a couple of saves out of Kepa Arrizabalaga close to halftime.
An intelligent pass from Hazard set Hudson-Odoi on the way five minutes to halftime, but a stunning save from Lukasz Fabianski kept out the highly-rated teenager.
Needing an equaliser, Manuel Pellegrini made a change at the restart with Robert Snodgrass pulled on for Javier Hernandez.
West Ham’s first real shot on target happened on 55 minutes, as Arrizabalaga parried Manuel Lanzini’s close-range drive from a Marko Arnautovic cut back.
Content with the evening’s work, Chelsea silently managed to see out the result with the substitution of Ross Barkley for Loftus-Cheek in the last 20 minutes.
The Hammers continued pushing for a way back with Arnautovic denied by the side-netting seven minutes from time.
Moments from entering, Giroud almost punished the visitors from slack defending after latching onto a through ball but Fabianski’s alertness came up trumps.
The second eventually came and it was none other than Hazard who dropped to the shoulder of the defence to find the bottom corner in added time, as the Blues go third.