I'm 99% sure the answer is yes, that's doable, although you'd need a custom plugin to handle the bulk of it. You'd need to write some PHP to handle the unzip, and place the files where you want them.
You may want to create a plugin with a Controller to handle the file upload & unzip. You can use Craft's Zip::compress() and Zip::unzip() methods to help. Your form will be able to POST directly to that controller.