AFAIK:
If you're on a shared server and that server is running as 'nobody' then there's no easy way to do this - the script can access any file accessible by the 'nobody' account and by definition for scripts to work they must be accessible to that account.
If your server is running in suexec mode than things are different in that the server runs as a user and is thus restricted to reading files accessible to that user.
Apache access controls are not relevant as it's not apache that's opening the files - it's the script that's running which doesn't check .htaccess files or restrictions in httpd.conf etc.
Anyone who knows better please feel free to correct me but that's how I understand it. This is one of the reasons people prefer real virtual servers / dedicated servers over shared servers.