Your website has been hacked. The hacker added some code to do the redirect only if it detects a referrer from a search engine. The search engines are not the problem here. Your site is what needs to be fixed.
Redirecting only search engine traffic is a common technique for hackers. They do this because it takes the majority of your traffic while making ...
Redirect /photo/useralbums /my-profile
The result is that the user ends up at: /my-profile/Mario
This will happen if the request is for /photo/useralbums/Mario since the mod_alias Redirect directive is prefix-matching and everything after the match is copied onto the end of the target URL.
If you need to redirect all URLs of the form /photo/useralbums/<...
I don't know if using a link shortening service would hurt you. I don't think that it would even if it was from a shorter subdomain, like in your example.
Link shortening works exactly like you described, you would just use a bit.ly or shortened version of your own domain xmpl.co for example.com and a hash string at the end for the page redirect, or ...
You can do 301 redirects which will transfer much of the google juice from the old to the new site, however you will likely not have the domain authority on the new domain which will reduce the rankings a bit - although this will come back over time.
Why not put new content on the old domain?