There is not right or wrong way to write JS. However, there are standards.
It is a standard to not run any JS before the document.ready event. This ensures all elements are loaded and all other JS is present.
I can assume that your theme uses JS to change the page template select before the document.ready event.
This is not good practice as we can see in this case, it is throwing an error as ACF is watching that element for a change action, but ACF has not been given a chance to instantiate it's data property.
A note of warning. When chatting to web developers, please put aside the attitude. There's no need to stress or anger or this kind of language in this environment. We are all here to do what we love. Just because your pre-made theme and the ACF plugin aren't compatible doesn't mean you need to get all rambo.
Just ask them nicely to make this edit. It's pretty basic stuff.