Though I am not fan of using gradients in logos, I have to because that is what sells. "Eye Candy Effects"
eye Candy effects looks awesome on screen and depending on the print substrait the effects will be fine. However gradients printed from your desktop onto uncoated paper will look dull and washed out. Reason being is uncoated paper absorbs the ink. Coated Stock such a glossy photo paper will look fine.
Your concerns about other materials such has ball caps and shirts. Silk screen gradients will work but it depends on the type of silkscreen that is use. But it's generally best and most economical to use 1 or 2 solid colours....so you would have solid colours for silk screen and gradient versions for web and print.
Embroidering, once again the solid colour version would be used in this case. example my logo (avatar) is gradients for web and print, Recently I have had ball caps done (embroidered) using a single colour. The ball caps chosen are beige and navy blue. A light tan colour thread was used to match the trim on the navy blue hat (looks incredible) and a navy blue thread to match the navy trim on the beige cap.
If you want to be really cool never place the logo in the front...there is panel seam that really just ruins a look. My logo is placed center of the left panel (the panel that is over the (heart)
Hope this helps
Scott