I've been in this situation before and it's no fun. Change the lease time to an hour until your addresses are freed up, then decide on an appropriate number of days. By default, I don't believe that PCs check in with the DHCP server until their lease reaches 87.5% usage so it might not be instantaneous. I have many machines and I've never had any problems with the default setting of 8 days. I personally wouldn't assign them reservations unless you have a need for static addresses because it would be a ton of work for very little payoff.
If it's a true emergency, you could remotely release and renew their IP addresses to get them on the new hour lease. Use a utility like Remote Command GUI to do it from your desk.
Also, you could change the DHCP scope to a superscope to give you more addresses (assuming you can expand into the next subnet). At my school, we only use superscopes to avoid this problem (and we learned the hard way).
Brian