What is the correct way to restart nmcli interface remotely?
If you use nmcli's device reapply command, it will apply the changes. Replacing devicename with the actual device name of course.
nmcli device reapply devicename
This worked fine for me.
nmcli device disconnect enp4s6; wait ; nmcli device connect enp4s6
Obviously replace enp4s6 with your device name