As for the differing TLDs, one method might be to come up with a way to securely encrypt (2-way encryption, mind you, such as a public-key cryptographic algorithm.. RSA comes to mind) the username/password combination used to log in to the first domain.
Then, you could include a hidden image or simply do a redirect to the second domain with the encrypted data in the URL, e.g.:
domain2.com/login.php?data=123456789abcdef
The "login.php" script on that domain could then decrypt the cyphertext, validate the credentials, and, pending successful authentication, set a cookie for that domain.