Mit der Kopie kann es eigentlich nichts zu tun haben, weil immer nur die aktuelle EXE geladen wird...oder?
Windows leitet intern die Zugriffe auf die umbenannte Version um. Nur deshalb kannst du diese auch im laufenden Betrieb umbenennen. Wie das genau funktioniert, weiß ich nicht, aber ich vermute der Server muss damit etwas zu tun haben, denn dort wird die Exe ja schließlich trotz Zugriffs umbenannt.
Eine ganz einfache Lösung, die wirklich immer zuverlässig funktioniert:
Ein Loader (der kann ja wie die ursprüngliche Exe heißen) startet die jeweils aktuelle Exe, die unter einem Namen mit Versionsnummer, wie du es ja schon für alte Versionen hast, gespeichert wird. Der Loader kann die neueste vorhandene Exe nehmen, die korrekte aus einer .ini lesen, wie auch immer.