Sorry but I cannot reproduce this problem and looking at the code for PrivacyPageLink.cs I do not see how it is possible for it to use a different host name than the one used by the containing page.
I just added it to our demo site in the art41-bookheader skin and it correctly points to demo.mojoportal.com/privacy.aspx even though the demo site is not the root level master site, it is a child site in a multi site installation. (though the actual page does not currently exist in the demo site the link is correct, all I would need to do is actually create the page). For the base part of the url it uses SiteRoot property of mojoBasePage which is used alsoi by all kinds of other links so if it were not working correctly there would be lots of incorrect links not just the privacy link, but it is working correctly as far as I can see.