Lots of questions there, so hopefully I don't miss anything...
It sounds like you're looking for an auto-sleep function where it does 10 images, sleeps, does 10 more, sleeps, does 10 more, sleeps, etc. I don't imagine this would be difficult to implement, but I've generally tried to avoid making the bulk process take longer than necessary. The resume capability has made that less of an issue, so I'm open to revisiting this again.
That all said, there is a way to do this manually that you may not be aware of:
You can start the bulk optimize, then hit the stop button in your browser. Then go into the bulk optimize again, and it will now give you a resume button. rinse, repeat...
Additionally, there are a couple things on the performance side to clarify:
1. If you are doing high-quality images, I assume you are working mostly with jpg images, and those process much quicker than png images, although with the quantity you are looking at it is still going to take a while. With a very large 18 MB jpg on my very under-powered test server, it only takes 13 seconds. A smaller 4 MB file took around 3 seconds. You don't need to worry about timeouts as much (because of the 'resume' capability), but that leads me to the issue you mention with crippling/overloading the server.
2. None of the utilities used are capable of multi-threading, so worse-case scenario, you are looking at monopolizing a single core for the duration, and your web server should keep happily chirping along. Of course, if it doesn't, you can hit the stop button like I mentioned and let it catch up for a bit.
If you STILL feel the need for an auto-sleep function, let me know, and I will schedule it for inclusion in the upcoming 1.2 release (looking to push that out this weekend or early next week). You should also be aware that adding such a delay will involve an increased risk of timeouts. I believe most of the issue is on the apache side, but php also has timeout limits that should be increased should you choose to go this route.