Bruno Guimaraes scored a late winner as Newcastle made Fulham pay for their missed opportunities in a 1-0 victory at Craven Cottage in the Premier League.
The Brazil international struck after 81 minutes on a day when both sides lacked cutting edge.
Victory for Newcastle extended Fulham’s winless run to three as they struggled to rediscover their March form which included a 3-0 home win over Tottenham.
After both sides took the knee before kick-off, Fulham started on the front foot as they searched for the opener.
Fulham returned to Craven Cottage after failing to pick up victories in their last two away from home and a neat bit of skill on halfway by Willian allowed them to counter, setting the tone for an improved performance in west London.
Marco Silva had blamed a lack of clinical finishing as the reason behind his side’s FA Cup exit to Newcastle in January and more of that was on display here.
After Joao Palhinha dragged his effort wide from six yards out, the unmarked Andreas Pereira squandered the chance of the match when he failed to connect with a close-range header from Antonee Robinson’s whipped delivery.
Newcastle had failed to get going and a slip from Guimaraes in possession had summed up their lacklustre half as Eddie Howe’s men looked to build off their 1-1 draw with Everton last time out.
United sought inspiration through Anthony Gordon, however. The tricky winger’s long-range effort whistled past the left-hand post towards the end of the first half and he started the second half with equal intensity.
Gordon, who will be amongst those in contention to feature in Gareth Southgate’s England squad for this summer’s Euros, cut in from the left on to his trusted right foot, forcing Bernd Leno into action as his curled strike was palmed away.
The hosts had not replicated the pressure from the first 20 minutes but a well-worked combination between eight-goal man Rodrigo Muniz and Pereira created a huge opportunity.
The Brazilian duo combined on the edge of the area with a neat one-two, with Muniz’s lay-off allowing Pereira’s left-footed attempt to test Martin Dubravka at his right-hand post.
Newcastle thought they had taken the lead through Fabian Schar but referee Sam Allison ruled it a foul after consulting the VAR monitor.
Dan Burn had used his forearm to shove Calvin Bassey to the floor in the build-up before the Swiss centre-back finished at the near post.
But Fulham’s blushes were not saved for long as Newcastle scored a legitimate goal after 81 minutes.
Harvey Barnes broke away down the left and his cross deflected off a white shirt perfectly into the path of the late arriving Guimaraes, who powered his first-time effort into the bottom left corner in front of the travelling supporters.