8 lipca 2007 roku Liverpool F.C. sprzedał Bellamy'ego do West Ham United za 7,5 mln euro. Bellamy podpisał z londyńskim klubem czteroletni kontrakt. W nowej drużynie zadebiutował 11 sierpnia w przegranym 0-2 ligowym spotkaniu z Manchesterem City. 28 sierpnia w meczu Pucharu Ligi zdobył swoje pierwsze dwie bramki dla West Hamu. W Premier League pierwsze trafienie zaliczył trzy dni po tym w spotkaniu z Reading. Debiutancki sezon Bellamy zakończył z ośmioma ligowymi występami oraz jednym pucharowym.

14 stycznia 2009 roku Bellamy za 14 milionów funtów przeszedł do Manchesteru City, z którym podpisał 4,5-letni kontrakt. W nowej drużynie zadebiutował 28 stycznia w spotkaniu z Newcastle United. W spotkaniu tym zdobył także swoją pierwszą bramkę dla Manchesteru City.

31 sierpnia 2011 roku, Craig Bellamy rozwiązał za porozumieniem stron swój kontrakt z Manchesterem City i trafił do Liverpoolu F.C., klubu w którym występował w sezonie 2006/2007. Związał się z drużyną „The Reds” 2-letnim kontraktem. Debiutanckiego gola po powrocie do Liverpoolu Walijczyk zdobył w wygranym 2:1 meczu trzeciej rundy Pucharu Ligi Angielskiej przeciw Brighton & Hove Albion F.C.