This will require a little tweaking. Believe me, this is for a good reason.
Background
A friend of mine has been working on a non-profit public interest website for two years. The site is designed to counter misinformation about a particular public person. Of course, over the past two years, those of us who support what he does have been relentlessly linked to the site in order to promote it on Google so that it looks very high when you look for that public name. (In fact, this is the result of number 2, directly under the site of a public person). He does not have the support of this public man, but what he does is in the public interest and good.
Recently, a friend had a hit. Coincidentally, the domain name appeared to renew the right when he was in the hospital, and his wife missed a letter about it. The squatter owner hacked into the domain and exposed content diametrically opposed to his intention. This squatter now benefits from Google’s placement and page rank.
Fortunately, there were other domains that belonged to him, which were an alias to point to this domain, i.e. they used DNS mapping or HTTP 301 redirection (I'm not sure what) to send people to the correct site. We reconfigured one of the alias domains to point directly to the source content.
We published this new name for the site, and the community has now created thousands of links to the new domain and captures all the old links. It’s clear from the cache that Google actually crawled the source site at the new address and re-looked the impost site.
Problem
Although Google crawled both sites, you cannot make the site appear in relevant searches at the new URL!
It seems to me that Google remembers the old redirect between two names (probably because someone was connected to the new domain when it was an alias). It processes two sites as if they were the same site in all results. The results for the site name and the use of the "link:" operator to search for sites that link to this site are fully consistent with the fact that Google is convinced that they are the same site.
Keep in mind that we do not have control over the contents of the old domain, and we do not have cooperation with the person with whom these sites are associated.
How can we convince Googlebot that domain "a" and domain "b" are now two different sites and should be considered as results in the results?
EDIT: Forward, probably was DNS, not HTTP.