What is the best way to seperate the content from the pages

There is no ‘correct’ way to do this at the moment. I know Umbraco is working on the concept of reusable blocks, where you can create a block and reuse it multiple times, but at the moment, that is not finished.

We usually have this content structure

Website container
— Content
——Home ← The one has the culture and hostnames
———Page1
———Page2
——Shared content
———Faqs
———Locations
———…etc
——Settings

So effectively, only pages under ‘home’ have a routable URL. And when you have multiple sites, you simply have more containers:

Website container 1
— Content
——HomeWebsite1 ← The one has the culture and hostnames
———Page1
———Page2
——Shared content
———Faqs
———Locations
———…etc
——Settings

Website container 2
— Content
——HomeWebsite2 ← The one has the culture and hostnames
———Page1
———Page2
——Shared content
———Faqs
———Locations
———…etc
——Settings