It's not a Forge update that's needed... it's an Optifine update...
An open-source project and closed-source project are incompatible with each other, why do you assume its the open-source project's responsibility to fix that?
No Diesieben is right (Source: I fixed the issue) the issue was paths were being encoded for http (replacing http-illegal characters like spaces with encoded forms, space in this instance is encoded to %20)
As for the other person's issue there is very little info there and regardless I'd prefer you made your own topic with as much info as you can give
No, you would use the full path like "C:\Program Files\Java\jre8\java.exe" (Include the quotes because the path contains spaces) instead of Java (Note this is an example, please don't just copypaste, find it on your own system)
I'm getting confused here... I was under the impression you were saying that even with the port set to 25566 the startup message was still saying 25565