У меня была такая проблема. Решил ее следующим образом: в windows 10 есть окно, в котором все пути выводятся в отдельных строках и там же есть кнопки "Вверх", "Вниз". Я путь к php поставил ниже, после пути к файлам composer. И случилось чудо, composer у меня заработал.
2. Смотреть что у вас оказывается в path, проверять руками реально ли есть такой файл.
Учтите что на *nix хостингах (в отличии от домашнего windows) регистр символов ЗНАЧИМ
3. Мне кажется странным делать echo в случае ошибки. Логичнее кидать exeption и обрабатывать как то.