Конечно PHP не выполнит эти директивы, если произошла синтаксическая ошибка. Потому что этот сценарий даже не начал выполняться! Как это не удалось на этапе разбора.
Вы должны использовать другой способ установки этих директив, хотя это может быть сложно. Похоже, ваш PHP работает как CGI, а не как модуль apache, поэтому единственный способ установить директивы ini - это редактировать сам php.ini.
Чтобы быть уверенным, пожалуйста, запустите phpinfo();
и посмотрите, что он говорит о серверном API.
В любом случае, вы должны проверять apache error_log каждый раз, когда видите 500 ошибок, чтобы выяснить, что именно произошло.