I book a few months in advance if I can. I haven't noticed rates at higher end properties getting materially better by booking even earlier. A few thoughts:
1) Even after booking I'll do a spot check to see if the rate dropped or if there's an offer. A lot of times hotels will offer a third or fourth night free, but don't specifically apply it to your rate unless you use the rate code.
2) Two weeks before the trip, and if the trip is for pleasure, I'll switch the booking to pre-pay nonrefundable to save money. It's only because I'm very certain the trip won't change, so why not? Business travel is far more in flux and the money saved is not worth the potential sacrificed by having to change things around.
If you have a good relationship with the hotel, you might also find that they're more flexible on their strictest offer. I had a personal emergency pop up last year and had already prepaid a few nonrefundable bookings, but because I was already a regular at the hotels they graciously still gave me my money back. I find that hotels are generally a lot more flexible if you are a regular.
Finally, always worth calling to see if they can budge on a rate. I again had a personal emergency last year and had to make a slew of closed-in bookings. The rates were absurdly high, but I called the reservation desk and explained the circumstances. All of them offered me a discount, but also because I'm a regular.
So, again, YMMV. I do find that loyalty and relationship building are the best for saving in the long run. I've already managed to squeeze a good deal with BHH because of my previous stays at the Belair.