Is there any way to get Gradle to extract the ZIP on the target machine?
You'd have to execute Gradle on the target machine (for step 3), or use some remote execution facility (e.g. SSH) from the Gradle build on the source machine. (If SSH is an option, there is a nifty third-party SSH plugin for Gradle.)