Currently in case a package is supposed to be uninstalled through the package installer, the package is first being uploaded to the PackageManager (https://github.com/apache/sling/blob/trunk/installer/factories/packages/src/main/java/org/apache/sling/installer/factory/packages/impl/PackageTransformer.java#L138). That should not be necessary though. Instead the package id/version should be extracted from the underlying resource and then should be uninstalled.
Also in case the package is already installed in the same version upload should be prevented.
This applies to both regular and hollow package installation.