The Chase Sapphire Preferred is best for you, as it offers more travel rewards, comprehensive travel insurance, and no foreign transaction fees, making it best for international trips. You get the points on flights and restaurants with the American Express Gold card, but it costs foreign transaction fees.
So according to your needs, i think the Chase Sapphire card is the best for you.