The Baggies at least had the consolation of ending a run of three successive defeats and maintained their place in the top six. But Sam Allardyce's side were worth a share of the spoils in a game which seldom moved out of second gear.
Morrison posed Albion's most creative threat despite operating in a deeper role in the absence of the injured Claudio Yacob, but the Hammers showed plenty of resilience with central defender James Collins a rock solid performer.
Albion made a promising start but the first semblance of a chance fell to the visitors with Mark Noble heading a deep cross from Carlton Cole over the bar.
West Brom striker Peter Odemwingie was on target with a low 25-yard drive although Jussi Jaaskelainen got his body behind the ball.
Chris Brunt drilled a long-range attempt into the hands of Jaaskelainen before Winston Reid spurned a gilt-edged chance for West Ham. James Collins headed a Noble corner back into the danger area and Reid volleyed over the bar.
Carlton Cole stung the palms of Albion keeper Boaz Myhill with a 30-yard drive but it was Albion who started the second period on the offensive and Morrison's hooked volley struck the top of the bar.
Reid produced a vital clearance to turn a low Odemwingie centre over his own bar under pressure from Long.
But West Ham looked dangerous on the counter-attack and Joey O'Brien volleyed over at full stretch from a deep Noble free-kick.
Morrison struck the bar for the second time with 17 minutes remaining with a header from Brunt's corner.