Gold settled 2.9% higher and silver rose 5.2% as uncertainty around President Trump’s tariffs spurred safe-haven demand.