A ma connaissance, c'est tout simplement pour des raisons de sécurité.
Etant donné que le contenu d'un script peut être modifiable beaucoup plus facilement qu'un code compilé, cela constitue une faille de sécurité béante.
Pour "contourner" ca, pas d'autres moyen que de lancer ton script via un programme compilé qui l'exécuterait ensuite. Mais c'est encore pire côté sécurité (si tu passes le script en argument, hello suid pour tout script présent sur ta machine, si le chemin est hardcodé on pourrait écraser ton script et le remplacer par un autre).
De manière générale, le principe du suid est a manier avec précaution, cela ouvre très souvent la possibilité aux utilisateurs de gagner un accès root.