Fine jewelry shops at St. Thomas would be my best guess. They are also sold on some ships (Celebrity Millennium). In fact while on the Millie, they had a policy that they would match or beat the price of a shore side dealer. I believe it was H. Sterns.
Yes, you should be able to find them in St. Thomas, no problem, most likely San Juan as well, and also have always seen them onboard the ship, so check all the prices, especially in St. Thomas.
There is also a shop in Nassua Bahamas, wish I could remember the name but it was on the main shopping street, very large and high end items. They had everything there and I am sure they would have Lladro. At the Atlantis resort also in Bahamas, they have alot of high end shops there. I would 1st compare the pieces/prices avail on the ship before you buy on shore.
I bought several Lladro and Nao in St. Thomas on previous cruises. Prices have
gone up considerably so check first with the ship's boutique- often they beat the
prices in St. Thomas. If looking for these lovely figurines, you will find them in
most fine shops such as Little Switizerland, H. Stern and other similar shops in
St. Thomas. Also many shops in the larger hotels such as the Hyatt, Marriott,
Renaissance, other big name hotels will also sell Lladro and Nao figurines.
Another Caribbean island that I had success in finding good buys for Lladro and
Nao is Philipsburg, St. Martin.