Burnley had the better of the opening exchanges, with Robbie Blake fizzing a free kick narrowly wide from 25 yards, and then shooting tamely past Steve Bywater's right hand post on the break when he should have passed it to Tony Grant.
West Ham's first shot came just after the half hour when Adam Nowland stroked the ball wide from 25 yards.
The Hammers then tested Danny Coyne in the visitors' goal when Nowland, Teddy Sheringham and Nigel Reo-Coker all tried their luck from outside the box.
With the second half going much the same way as the first, Alan Pardew decided, 13 minutes in, it was time for a change.
To great applause, Steve Lomas on the bench for the first time after an ankle injury had hitherto ruled him out of action this season, came on for Luke Chadwick - and the change was immediate.
He won a corner within seconds of coming on, and his arrival seemed to inspire his team mates as well as the crowd.
Etherington's corner was met by a Harewood header that Coyne saved at point blank range, and within two minutes of that West Ham were ahead.
Another corner was only half cleared and Nowland, one of West Ham's best performers, raced in to blast the ball home through a crowd of players.
Etherington had a shot parried only for Harewood to be frustrated as he tried to follow up, while Sheringham had a header from an Etherington cross disallowed for offside - much to his anger.
Frank Sinclair was extremely lucky not to be given a second yellow card when he hauled down the advancing Etherington.
But there was trouble whem McGreal hauled down Harewood, who reacted while still on the ground.
The pair started a wrestling match which led to all outfield players - except Tomas Repka - getting involved in a fracas.
Eventually the referee booked Harewood, Anton Ferdinand and Duff.
Worse, though, was to come: substitute Chris Cohen was harshly adjudged to have fouled Tony Grant - and, to make matters worse, was sent off.
After all that, Rufus Brevett swapped shirts with Micah Hyde when the final whistle went somewhat prematurely, with the fourth official not showing how much time was left.
Sinclair was earlier booked for a foul on Etherington, and Brevett for a foul on Richard Chaplow.
Ferdinand, Mullins, and Etherington all returned to the starting line-up after missing the Southend game through injury.
TEAM: Bywater, Repka, Brevett, Ferdinand, Mullins, Sheringham [Cohen], Nowland, Etherington, Chadwick [Lomas], Reo-Coker, Harewood.
Subs: Walker, Rebrov, McClenahan.