1-0 up at half-time after David Connolly had been the only one to convert a host of early chances, and generally controlling all areas of the pitch, Hammers were simply second best throughout after the break and were lucky not to concede all three points after Tim Cahill had headed a deserved 74th minute equaliser.
After last week's dismal defeat at Gillingham and a gruelling midweek trip to Cardiff that saw Hammers scrape through to the next round of the Carling Cup after coming back from a 2-0 deficit, Trevor Brooking's men returned to Upton Park today with the backing of a vociferous 30,000-plus crowd, hopeful of witnessing a winning performance in our first clash against the Lions for over 10 years and a push back towards the top of the first division table.
Sadly, they saw another less-than-convincing display and proof that incoming manager Alan Pardew certainly has issues to address when he finally takes over the hot-seat in just under three weeks' time.
Keeping faith with the familiar 4-3-3 formation that saw Neil Mellor continue to lead the attack alongside Connolly and Jermain Defoe, Brooking had made just one change to the team that started Tuesday night's Cup victory in Wales, as Rob Lee returned from a slight groin strain to replace Anton Ferdinand in midfield.
With Hammers making the better start, buoyed on by a fired-up and vocal home support, the 37-year-old was pulling the strings in the centre of the park and created Connolly's opener in the 24th minute with a looping pass into the right-hand channel that the Irish international ran on to before turning inside a defender and racing into the box where he planted a low shot past goalkeeper Tony Warner.
It was Connolly's sixth goal of the season and, with Hammers now surging forward at every opportunity, it seemed likely that he and his team-mates would add to their tally before too long. Mellor went close with a curling shot from the edge of the box after seeing an earlier header drop just wide, while Defoe should really have followed on from his midweek hat-trick when he latched on to a stray back-pass on the stroke of half-time.
With only Warner to beat, though, the young striker took one too many touches and his eventual chipped effort was cleared off the line by a defender.
Prior to the interval, the visitors had tested the Hammers goal just twice. On both occasions, Cahill had been denied by impressive saves from James, but the Millwall midfielder was clearly beginning to find too much space in dangerous areas.
Anticipating a more gallant approach from our opponents in the second half, Brooking made a change at the break, bringing Niclas Alexandersson on for Mellor in order to add the natural width on the right that had clearly been missing in the first half, and provide a platform for his team to enjoy a higher rate of possession.
Lions boss Mark McGhee made changes of his own at half-time, introducing striker and Neil Harris and left-sided midfielder Matt Lawrence, but Hammers once again made the better start and should really have doubled their advantage in the 50th minute.
A long ball forward was headed clear, but only to Defoe, whose first-time volley deflected off a defender and into the path of the advancing Matt Etherington. The young midfielder, now playing in his more familiar wide-left role, sent in a sweet 12-yarder that beat Warner but cannoned back off the post and was hacked to safety as Horlock tried in vain to stab home the loose ball.
That near-miss seemed to spark Millwall into life and, with Hammers struggling to find space in midfield, the game began to swing in the visitors' favour. Too often, David James and his defence were once again forced to resort to long, high balls forward as the Lions pushed further upfield and, with Defoe and Connolly no aerial match for their six-foot-plus markers, frustrations began to grow.
The impressive Paul Ifill was causing more and more problems in behind Harris and target-man Bob Peeters, and he almost claimed an equaliser in the 68th minute when he broke free on the left and rattled the crossbar with a stinging left-foot effort that rebounded to the edge of the box, where Harris volleyed over.
Six minutes later, though, Millwall did finally draw level and again it was the late run of Cahill from midfield that opened Hammers up. Ifill found space on the right and clipped in a measured cross that was met by the unmarked Cahill, who headed past James from six yards out to send the 2,500 visiting fans behind the Centenary Stand goal into a frenzy.
Moments later, they were almost on their feet again as Ifill sent a low drive just inches wide of the post, and Hammers then had James to thank as he pulled off a stunning reflex save to deny the Millwall playmaker with eight minutes remaining.
With Lee and Horlock tiring in midfield, the energetic young Millwall attackers, marshalled by their veteran captain Dennis Wise, finished strongly and looked more than capable of taking all three points back to south London.
Peeters saw a point-blank header cleared off the line, while Harris' hooked shot was saved well by James and Wise almost silenced the home fans with a free-kick that was thankfully held by the England number one.
Despite their poor finish, though, the hosts could still have won the game had Defoe shown more awareness in front of goal late on. He could be forgiven for shooting from the edge of the penalty area even though Horlock and Etherington were better-placed, but there was no excuse for his selfishness when he gained possession on the byline and elected to shoot from the tightest of angles rather than cut the ball square to hand Connolly an open goal.
The pair will play together for the final time on Wednesday night before Defoe begins a two-match ban that sees him miss the trip to Derby next Saturday and the visit of Norwich City on October 15 - Brooking's last match in charge before he hands the reins to Pardew.
Frustratingly, a needless fifth booking of the season for Connolly after he had barged an opponent who had fouled him today means that he too will miss the clash against the Canaries.
First and foremost, however, is the prospect of another London derby at Upton Park, against Crystal Palace on Wednesday night. Maybe the atmosphere won't be so highly-charged, but Hammers will certainly need to step up their performance if they are to return to winning ways in the league.
by Danny Francis
Minute-by-minute:
8 - Millwall miss a glorious opportunity to open the scoring early on, as Peeters beats the offside trap on the left and slips the ball inside for Cahill, who has only James to beat from six yards out in the centre of goal. Somehow, though, the Hammers keeper manages to superbly block the effort and the ball spins wide for a corner.
11 - Spurred on by their near miss, Hammers fight back and Mellor goes close, heading Repka's cross just wide from 12 yards out.
13 - On the counter-attack from a Millwall corner, Quinn feeds Defoe, who turns and runs at the defence before firing in a shot that is deflected into the arms of keeper Warner.
16 - Hammers go close again, as the lively Defoe plays an intelligent pass to Etherington, who crosses low to the near post, where a defender beats Mellor to the ball.
17 - An even better chance, as Lee's delicate chip into the penalty area finds Connolly. Unaware of how much space he actually has, though, the striker elects for an instant header and sees his weak effort comfortably held by Warner.
24 - GOAL! After threatening for a quarter of an hour, Hammers open the scoring in stylish fashion. A clever volleyed pass from Lee releases Connolly, who cuts inside a defender and surges into the box before coolly slotting his left-footed shot past Warner into the corner of the net. West Ham United 1 Millwall 0.
26 - Millwall almost hit back immediately, as a near post cross is met by the diving head of Pearce, who diverts the ball just inches over the bar and on to the roof of the net, much to the relief of the stranded David James.
27 - Racing away on the counter-attack again, Mellor bravely beats a defender to the ball on the right and cuts inside before firing a left-foot shot straight at Warner.
38 - Craig booked for foul on Mellor.
42 - Connolly booked for unsporting behaviour.
43 - Millwall register only their second effort on target, and again Cahill is denied by James, who does well to hold the midfielder's near post header from Wise's free-kick.
Added time: 2 minutes.
45 - Peeters booked for foul on Pearce.
45 - Hammers see a great chance to double their lead go begging. A stray back-pass falls to Defoe who, with only Warner to beat, tries to round the goalkeeper and then sees his goalbound chip cleared by Craig. Connolly then cuts the loose ball back to Horlock, whose header sails over the bar.
Half-time: West Ham United 1 Millwall 0.
Second Half:
46 - Substitution for West Ham, Alexandersson replaces Mellor.
46 - Double substitution for Millwall, Harris replaces Roberts, Lawrence replaces Dunne.
50 - Hammers almost start the second half with a goal, as Defoe's volley is charged down, but only to Etherington, whose low 12-yarder crashes back off the post before being cleared as Horlock can pounce.
52 - Defoe's mazy 40-yard run almost ends in glory, but his angled shot flies wide of the target.
54 - Cahill's 25-yard effort has James scrambling across to his left, but the Hammers keeper manages to palm the shot down and then collect the loose ball.
59 - Connolly drags a 20-yard effort wide of the target after Horlock heads down a long ball forward.
60 - Harris' dipping 25-yard volley thankfully drops just inches over James' crossbar.
68 - Millwall are beginning to show signs of a fight-back, and almost equalise when Ifil finds space on the left and rockets in a fierce left-footed shot that beats James but crashes off the bar, and Harris volleys the rebound high and wide.
74 - GOAL. It has been threatening for a while, as Millwall snatch a deserved equaliser. Ifil's cross from the right beats the Hammers defence and Cahill rises unmarked at the far post to head past James. West Ham United 1 Millwall 1.
75 - The visitors almost take the lead, as Ifil races on to a loose ball on the right, but fires his effort just wide of the far post.
81 - Substitution for West Ham, Ferdinand replaces Pearce.
82 - James comes to the rescue again with a stunning reflex save to keep out Ifil's diverted effort from eight yards out.
85 - Millwall go close again, as Peeters' point-blank header from a corner is cleared off the line. The ball is returned back in to the danger area, but James saves Harris' hooked shot.
86 - Hammers are handed a golden chance to snatch a winner, as Defoe skips in behind the Millwall defence but, instead of rolling the ball across the area for Connolly to convert an open-goal, he opts to shoot from an acute angle and Warner blocks the effort.
90 - Quinn booked for foul on Ifil.
Added time: 2 minutes.
90 - Hammers break free again, but again Defoe chooses to shoot when others are better placed, and his effort from outside the penalty area trickles wide.
90 - Wise goes close to silencing Upton Park, with a free-kick from 20 yards out that James holds well down low to his left.
Full-time: West Ham United 1 Millwall 1.