On a tangental note. Don't you use privilege separation on your Apache? On my Apache 2.2 although root starts Apache (needed for port 80) it spawns processes under a non root account and that account then is the owner of Perl scripts that are executed.
Comment on Re: Insecure dependency in chmod while running setuid
Yes, Apache on my machine executes cgi scripts as the Apache user, hence the need for setuid to do stuff that the Apache user doesn't have permissions for.