_Oli,
Just to recap
With this config (site folder added)
If I login to site_a, site_b’s url is being shown and I end up being logged into both sites.
If I login to site_b, site_a’s url is being shown and I end up being logged into both sites.
This works for you but the refresh is troublesome for you? It is probably down to your meta refresh as you mention.
You could try a php redirect instead of the Meta Refresh in your index file for site_a. I can’t guarantee it will make a difference but worth trying
<?php
header ("Location: <a href="http://www.site_a/site/index.php">http://www.site_a/site/index.php"</a>);
exit;
?>