Building remotely upload locally

I don’t think this is supported.

What you could do is write a small script that does the remote build (using pio remote run), then copies the build result back to your machine somehow (ssh / scp) in the same place (.pio/), then execute an upload without build on your local machine (pio run -t nobuild -t upload).

As this seems like a crutch, feel free to propose a new feature in https://github.com/platformio/platformio-core/issues/.