it's a bit confusing.
So system2 should have loaded api calls with system 1 env. But system 1 is loading system 2 instead of using it's own env?
Are you using Laravel 5 or 4.2?
If you followed configuration correctly it's probably a bug somewhere.
http://laravel.com/docs/4.2/configuration
http://laravel.com/docs/5.0/configuration
PHP should have loaded system 1's environment instead of system 2. Because system 2 is just request and receive. The env of system 1 should be the one to load.
What is your Webserver and PHP 5 setup (nginx + php5-fpm / apache php5-fpm) ?
My wild guess is probably due to global override. Since both are using 1 php, conflicting variables will be overwritten by the last assignment.
http://php.net/manual/en/reserved.variables.environment.php
If you can change the index to a different one, I think it will not conflict.
You should probably just run 2 virtual machines and share the same folder.