Alexander Zverev finally claimed an elusive Grand Slam title in his fourth final as he defeated 14th-ranked Flavio Cobolli in a dramatic French Open climax.