Kevin Davies’ close-range finish after 46 minutes secured Wanderers’ first win in nine matches to move the Trotters to within two points of 17th-placed Birmingham.
Davies also had two headers cleared off the line in the first half, while El-Hadji Diouf and Kevin Nolan both had goals disallowed for offside.
Jonathan Spector failed to deal with Matt Taylor’s inswinging corner and Davies pounced to fire home only his fourth goal of the season and the 100th of his career.
West Ham’s best chance came on 55 when Ali Al-Habsi flapped at Bobby Zamora’s cross and Luis Boa Morte shot at goal only for Gary Cahill to clear off the line.
Al-Habsi then atoned for his error by superbly tipping over Dean Ashton’s overhead kick.