Spain enjoyed a virtual monopoly on the New World trade for several decades before other European nations began to try and take over parts of the Columbian Exchange.
First, other countries began to try and fund voyages of exploration themselves. England, France, and the Netherlands all paid explorers to chart the New World and seek areas where colonies could be set up.
Second, the establishment of colonies for trade purposes allowed other European countries to begin cutting into Spanish trade. The establishment of colonies led to the production of cash crops and other trade goods that competed with Spanish goods and brought down prices.
Third, other European countries employed pirates and privateers. These sailors attacked and robbed Spanish treasure ships, most of which were lightly armed and slow, taking valuables out of the Spanish coffers.
Fourth, Spain saw its vast empire under almost constant attack by expansionist European nations. The Russians began moving down the Pacific coast into California while the French tried to move into Texas and the southwest. At the same time, England pushed into Florida in hopes of adding it to it's own imperial territories. All of these things led to Spain's resources being stretched.
Lastly, the increased strength of other nation's navies, especially the navy of England, led to more strain on the Spanish to maintain free and open waterways for their trade. Without naval superiority they couldn't freely traverse the ocean, which led to a pulback in their colonial production.