domain has its root (/) in /home/ACCOUNT/public_html/
domain has its root (/) in /home/ACCOUNT/public_html/dirname/
If a server is set up correctly, you should see the subdomain or add-on domain name in the browser address bar. Otherwise, you are likely to see http://www.primarydomain.com/dirname/
in the browser. That can be easily fixed with URL rewriting in your .htaccess
When you say that your "images" have the "bad" form of the address, where are you seeing this address displayed? It's not clear to me from your question just where
you are seeing this address. In normal operation of a page, the user doesn't see the image address, and if you are using an image as a link, it should show whatever address you gave in the <a href=. Do you have a relative address in the link, and it's prepending the "bad" form of the site address rather than the "good" form? That's all I can guess. If so, you would be seeing the "bad" address in the browser's address bar, and URL rewriting would fix both.