Thank you for your question! Have you tried using a cluster init script to install p7zip automatically when the cluster starts? This avoids the need for sudo during your session.
Alternatively, if unzip is already available, you can modify your script like this:
%sh
for file in /dbfs/mnt/zip/$source/*.zip
do
unzip -P "$pw" "$file" -d /dbfs/mnt/zip/$source/unzipped/
done