Expose EPi content by REST api probably by using .NET web api to build the SPA.
Build wysiwyg support by creating simple templates that are mostly mocked data except for the data you are currently editing is probably the fastest approach?
...then block access to the mockup pages that are used for editor wysiwyg for normal users.
Remember to take into account SEO, browser bookmarks etc if you go this way.
Not the easiest road to travel so to speak...
It will be basically that you build two sites.
1. SPA website based on Angular for the users. Angular consumes WebAPI REST API to get the data it needs. For instance, list of products and detail view.
2. Make it possible to get wysiwyg support for editors by creating very simple standard EPiServer templates in MVC (or Webforms). No SPA here. Just reuse the same css and html structure that you have for 1 but with mocked data except for the one you are editing. Let's say you want to edit a product. Make a productcontroller and view where the product detail information is gotten from epi but the rest of the information on the same page can be mocked (like menues etc). You may want to lock this "site" down in someway so users can't access those mocked pages. A separate editor server would of course be the best. Depends on how much you care if the users can "guess" some urls to those pages that editors will use for wysiwyg. Adding a location tag in web.config to lock it down to editor role might be good enough.
It's probably possible to create fyll wysiwyg support for editors without standard page templates like in 2 but not in any easy way I know of at least.
1. Depends on what security concerns you have. Normally you have only one instance of episerver that handles both public users and editors. It is possible to split them to different servers if you want increased security.
2. There exist webservice API to EPiServer out of the box but I would probably build a custom API using WEB API above the regular API to get the data in the form I want.
3. EPiServer doesnt need much performance on the servers out of the box. So if you decide to split servers its usually enough with a cheap servers for the editors since it will be low load on that one.
4. I don't get what you mean on this one sorry...