Why not use ExecuteStreamCommand to execute a local shell script that then SSH's to the remote machine and executes the Python script?
For what its worth, ExecuteScript does allow incoming flow files... The script is passed a session object which would then have to use the session to get a flow file, operate on it, and transfer it.
ExecuteProcess doesn't allow incoming flow files so maybe you meant that one? With ExecuteProcess I think you could make the command "ssh" and the arguments be the path to the script on the remote machine.