Move the directory out of place (to /tmp for example). Then delete it. Moves are atomic, and quick (since it's just a pointer change on the filesystem and doesn't really involve heavy disk I/O regardless of what's in the folder).
For the best resilience against any type of issue, you should create a directory structure like this:
/var/www/website/
releases/
1111/
1112/
1113/
current_release/
Let's say that your website is currently in /var/www/website/releases/1113/. Your apache should be setup with a DocumentRoot of /var/www/website/current_release/ which is symlinked to /var/www/website/releases/1113
When you need to clear your cache, what you should do is deploy a new release, such as /var/www/website/releases/1114. When ti is deployed, and has an empty cache directory, flip the symlink on /var/www/website/current_release/ to your new releases directory.
Apache will then serve files out of the new directory with an empty cache folder.
This is the only truly atomic way to accomplish things like this, other than taking the server offline (which usually isn't an option for something as trivial as clearing cache).
This would be a sort of enterprise-level solution to the problem, but it carries the added benefit of allowing you to easily roll back your production server as well (just switch the symlink to the previous version). It may seem like over-engineering if you're very concerned about the issue, this is the right way.