The use of the 404 Not Found error should be reserved for when the page itself cannot be found. When Special:WhatLinksHere returns 0 results, the page is operating exactly the same as if it returned 1 or more results. It should be returning a 200 OK status, as the page is working just fine.
It seems similar behavior was also questioned in T212702: Special:RecentChangesLinked returns 404, which was closed as invalid with the recommendation being:
For anyone wanting to change this behaviour, I recommend going back to the original ticket and evaluating if it is still an issue and whether is can be solved differently.
I think the closure of that issue was incorrect, because the initial issue and its fix were overzealous: The issue was that bots were linking to non-existent pages, and then the special pages were trying to query against non-existent pages. However, that is not the same thing as returning 0 results for a valid page.
I think the behavior introduced in rMW8b356fda61f1: Send 404 in various special pages when there're no results should be changed such that only the (non-)existence of the base page determines the 404 status. If the base page exists but the search query returns 0 results, a 404 status should not be used.