This game should have been all over by the 22nd minute. Crystal Palace, in the end, were made to work hard for this 1-0 win, but the fact remains that Bruce’s side just don’t look like scoring.
And until that changes, 14th-placed United, still seven points above the relegation zone, will be looking over their shoulders in the Premier League.
Newcastle, worryingly, have gone three games without a goal. Their last league strike came before the transfer window closed at the end of last month.
Bruce, surprisingly after last weekend’s 4-0 defeat to Arsenal, only made one change. Fabian Schar replaced the injured Ciaran Clark in defence.
United’s head coach resisted the temptation to recall fit-again Dwight Gayle to the starting XI against his former club.
Newcastle found themselves under pressure early in the game. Martin Dubravka superbly clawed away an early header from Gary Cahill, and they struggled to hold on to the ball.
Dubravka also stopped a Scott Dann header before Joelinton tried his luck from distance at the other end of the pitch. The striker was denied by Vicente Guaita.
The respite was brief, and there was another let-off for United midway through the half when Christian Benteke headed wide from a Patrick van Aanholt free-kick.
Newcastle found some rhythm late in the half, but they were undone by another set-piece. Patrick van Aanholt curled a free-kick around the visiting wall from 25 yards to put Palace ahead late in the half.
United were unchanged after the break, and things didn’t change.
Dubravka was kept busy, and a disjointed and disorganised Newcastle didn’t offer a threat up front. Guaita’s only scare was a deflected long-range shot from Schar.
Bruce sent on Gayle and Matt Ritchie with 20 minutes left on the clock. Gayle, however, didn’t get a sight of goal – and there was a chant of “attack, attack, attack” from the club’s 2,800-strong away support – and loan signing Valentino Lazaro was sent off late in the game for a professional foul.