Zona Dorada is chockablock with shops, particularly along Avenidas Camarón Sábalo and Playa las Gaviotas. The area is essentially one big tourist trap, with busloads of cruise-ship passengers and package-tour travelers being dropped off every few minutes. That said, if you're looking for souvenirs, beachwear, delightfully tacky seashell art, and jewelry, you won't have to walk but a few blocks in this area to accomplish all your shopping. Be wary when purchasing jewelry in Mazatlán; stories of tourists paying $800 or more for a ring here only to have it appraised at $300 (or less) at home are all too common. Always demand certificates of authenticity for all pieces.
The Centro Histórico has fewer shops, but it does have a handful of galleries that sell high-quality crafts that are much more interesting than what you'll find in the Golden Zone. Note that bargaining isn't the norm in shops, no matter where you are in the city, but it's worth a try in markets.