You can book ahead of time if you feel you need to do this but you'll be paying full price. On every cruise I've been on they have specials for "couples" massages which bring the cost down $50 or so which you can then turn around and leave a nice tip for the massuse. I wouldn't worry about them filling up for the simple reason, again, they are specials on every cruise! Enjoy and Happy Anniversary.
You've already gotten some great advice. Don't know why your agent said you couldn't reserve it ahead of time because you can. But as was stated by others, you may wish to wait until you get onboard and see what specials are offered. I suggest as soon as you get on the ship that you go there, do a tour, and talk to them about when they might be offering the specials during your cruise. And as was also pointed out, port days will often find the best deals since most passengers leave the ship and they have nothing to do. Sea days find them busy, so you won't see specials then.
However you end up doing it, you're in for a great treat!
__________________ Travel Agent/Cruise Specialist w/12 yrs exp and 47 Cruises on 11 cruise lines! Favorites: Paul Gauguin - Tahiti: Uniworld River Cruises - Europe; Celebrity Solstice-class ships; Holland America - 12-nights Baltics & Russia; RCCL - 14-nights Greek Isles, Turkey, & Croatia; Holland America - 14-day Alaskan cruisetour; 10-night Canada/New England cruise; 21 days Hawaii w/7-night NCL cruise; Oceania - 25 days in Asia; more than 3 months touring Europe by train. And many all-inclusive resorts!