So I know that you can get apps that close apps that are running but is there such a thing as a app that will stop these system performance draining apps from starting by themselves in the first place?
A lot of apps like watchdog have the ability to kill apps. The point is you shouldn't.
The OP's real question is how to stop the apps from restarting and running. To Chanchan's point, you shouldn't load them to start with - and if you do and don't like the fact they are restarting on their own, delete them. (which is part of the explanation as to why I don't have viber and facebook on my phone)
If you insist of stopping apps you can use advanced task manager or advanced task cleaner,they can be set to stop any app every minute.
I don't actually use them,i only use the task killer included in clean master that kills the apps only when the screen turns off,i think it does not make harm and perhaps can save battery.For regular killing when using the phone i don't think it brings benefits,i agree with the other users.
Gemini apps manager (requires root) will do EXACTLY what your asked for. Prevent apps from starting in boot...but not deprive you of ability to manually launch them (at which time the service may remain in memory until killed).
Perfect for (for example) Google maps. Otherwise it will load its service into memory at boot....being a service it of higher priority than most processes. Android is not smart enough to know you're not going to use it. Opinions against ever blocking or killing anything are IMO sometimes overstated...it can be very useful