That sounds like a bad web server config. Most servers run a virtual host, meaning the URL determines what website is served up. Either you have your own virtual dedicated server and only one site that isn't using vhost, or your host has set your website up as the default site.
If you have control over the web server config, I would add the malicious site to the config as a hosted site and then have it return a 404. That should de-index it.
If you don't have that level of control, try to get a 301 redirect for the bad domain. You really need something like an htaccess that says if a site is accessing my website as anything but www.mydomain.com it needs to 301 to that URL. Otherwise anyone in the world can hijack your site the way it's set up now. Just point another A record and instant duplicate content headaches.