Ben Shelton defeated Carlos Alcaraz in a five-set thriller at Arthur Ashe Stadium, snapping the Spaniard's 18-match Grand Slam winning streak.