You need to have a good understanding of how layouts, templates, pages and content work to really understand all of this but I'll try.
Switching templates a page utilizes will not affect the layout which holds the webpart zones. Templates need layouts and if your template is not using the same layout or a layout with the same webpart zone count and names, you'll have problems. Most sites don't need but a few layouts. The benefit of using shared layouts is if you need to make a large change, it makes it simple, vs. going to each page template and modifying its individual layout. So that would be the first thing I'd check, are you using shared layouts or not.
Here's an example for a shared layout scenario: if layout 1 contains 3 webpart zones and the are named Zone1, Zone2, Zone3 then you switch a template to use layout 2 that has 3 webpart zones as well but they are named Zone1, Zone2, ZoneA all the webparts in Zone3 will show in a gray space at the bottom of the page stating webpart zone Zone3 is not part of this layout/template. You can move the webparts to a different zone or remove them. No content will be displayed if the webparts are in this "invisible" webpart zone.