What you are describing is theoretically possible, but I'm not aware of any tools currently available Open Source or not.
Moving data around doesn't have to be as laborious as you are trying to make it. If you use scp instead of sftp, things are much easier, and can be scripted.
To move a file to a remote machine:
scp /path/to/file remote_machine:/path/to/file
To move a file from a remote machine:
scp remote_machine:/path/to/file /path/to/file
To move a file between two remote machines (and you are on a third):
scp remote_machine1:/path/to/file scp remote_machine2:/path/to/file
Hope this helps