The referrer is provided by the browser, not the web server. So you can't directly control it from PHP. Your PHP sending a "Referrer" header to the browser is meaningless; the browser will go on to send whatever referrer it wants to the other site when it connects to it.
You already have a goto.php page... Odd that the referrer isn't showing that page. Or is it? If the referrer is showing the old URL instead of the goto.php URL, then try using some other mechanism for redirecting, it might show goto.php instead. If the referrer is showing the goto.php page, maybe the target URL in the query string is causing it to be counted as a seperate page? If so, you might want to use some other mechanism to pass the URL to goto.php, like a cookie.
There may not be a solution though, which is probably why your competitors are doing it the way they are.