if you are asking about the Caribbean then i would say that some of the better deals on jewelry and liquor can be found on St. Thomas. St. Maarten also has very good jewerly prices, you can also get some pretty good deals on perfumes, colognes, linens and some designer items on St. Maarten- especialy on the french side. You may be able to find decent deals on loose gemstones and silver in Mexico.
Just be sure and check US prices in advance on what you are interested in. Not everything is a deal in the islands anymore. ANd do shop around when you are there. I have seen huge variances in St. Thomas for almost identical pieces of jewelry. The further away you get from where the ship docks, the lower the prices, as a very general rule.
Forgot you asked about art. For wood carvings, either St. Lucia (Eudovic's studio...high end, exquisite work) or Roatan for lower end work. I have never seen much in the way of designer clothing other than maybe Aruba. And, paintings are usually local artists. Some are fun as souvenirs, but that's about it. We did find a really good art gallery in San Juan, but we were walking around and I don't remember the name or location....sorry. Most shops are catering to souvenirs for tourists. It sounds like you are looking for better quality and that's more of a challenge.
if you are asking about the Caribbean then i would say that some of the better deals on liquor can be found on St. Thomas.
I am doing St. Thomas - Antigua - Dominica and BVI and had heard that a couple of these Isles have incredible deals on liquor.
Is there any tips or suggestions when buying? Are all the best deals within walking distance of the ship or is it better to cab somewhere further and cheaper? Is there a limit on how many bottles you can bring back to the ship? I always thought the cruise lines forbid bringing liquor back on the boat as it would hurt their on board sales.
Most cruise lines will take the alcohol from you when you reboard, then give it back to you at the end of the cruise. The limits on how much you can bring on board is not determined by the cruise lines, but by US customs. If you exceed the limit, they may make you pay import duty when you return to your home port.