Tell eclipse to reload environment variables
You can exit and start your eclipse instead of restarting it. It should just work fine then.
Environment variables set with "set" are set for the current process and its children. If you leave the process, the values are lost.
The "setx" command sets an environment variable in the system environment. But the values are read into the process only on restart. So eclipse still has the old environment variables and started processes will inherit these.