Hi Marco,
We build this capability into our larger packages. Our packages are built with a 'Stage' procedure which simply copies the entire payload to a location on the hard drive, and a 'Trigger Staged' procedure which executes the install. The trigger procedure must point to the installer using an 'External File' instead of 'Embedded file' so the package source is not downloaded again. By doing this we can download large packages days before we install them, then run the install locally so we can control the install time better.
You also need a method to clean up staged packages. We store details of staged packages as inventory, and each package has a purge procedure as well. We also have automation to clean up staged packages after a certain time (90 days).
Hope that helps
Steve McCormick