A (maybe a bit stupid) question - I assume your FortiGate is using the default server certificate for SSLVPN?
Is it possible that at 40% you're getting a pop-up in FortiClient (this might only be in the background - check in your task bar if there's a second FortiClient tab) prompting you to trust the FortiGate's certificate?
I frequently have that issue when setting up new labs with SSLVPN, and FortiClient gets stuck at 40%, I need to manually click on FortiClient in the task bar to bring up the certificate warning and accept it.
+++ Divide by Cucumber Error. Please Reinstall Universe and Reboot +++