This is a pretty bad situation to be in.
If this is for any serious kind of project you need to unwravell this iframe issue and just get rid of them.
Its not that search engines can't use iframes, they can, but they index what is inside the iframe which in your case seems to be www.site1.com.
To get othersite in the search engines without removing the iframe might be possible but you will have to make a decision.
The idea
Put url rewriting on your iframe site (othersite.com) so that it will serve all the pages from site1.com. Use url rewriting not url redirects so that the page appears to be coming from the othersite.com.
Add a sitemap to othersite.com so that Google can find all these pages.
The decision
In order to avoid Google thinking othersite.com is just a clone of site1.com you are going to have to block site1.com from the search engines.
Block your site1.com from being indexed by using robots.txt
This will mean any google juice you have accrued such as page rank or ageing the domain etc will be lost. If this is a business that depends on the search engines for business you should think hard about this.
Conclusion
I have never tried this technique out its just an idea I have had to solve your problem.
Its not a pretty solution and not something you should go out of your way to do (if anyone else is reading this).
The best solution is for you to get rid of your iframes. If you have problems with not being able to control the html inside the header and footer frames then there are still better solutions than using an iframe.
For example, you could use HtmlAgilityPack to parse in the html that should be in these headers and spit it out into your template with altered ids so you can contain the css.