You would just redirect subdomain2.domain2.sh to point to www.domain1.com/blog. There are a number of ways to do it and the method you choose would be dependant on what your hosting allows, so you should ask them what way they'd have you do it ( they might allow you a choice ) .... I think worse case scenario you'd just put an index.html file in the home directory of subdomain2 and use a meta redirect with a 0 time.
SEO is a consideration though. The last method is probably the least search engine friendly method. I think a 301 redirect ( again there is more than one way to achieve this - or at least more than one place you can do it ) is the preferred method for SEO. You also need to read up on duplicate content and canonical urls as this is a MAJOR seo consideration and if you dont understand it then you can really hurt your ranking. (A redirect is effectively duplicate content).
Regarding the second part of your question I am not sure. There are a lot of considerations. No 1 would be that it might be a big job to go through old links etc, though you might be able to do this using mod rewrite or some other htaccess trickery if your server allows it. Also I know you can change the URL and HOME settings for wordpress but I dont know about using a different domain. I have done some stuff like this in the past and to be honest it can get difficult to manage so you'd want a good reason to do it and you'd want to be a bit of a htaccess expert too I think. Ultimately though I think again you'd probably need to be sure of what you were doing from an SEO point of view as the search engines might not look favorably on this type of programming, I'm not sure myself.