His antics also caused a woman to drop her baby, which left the infant with injuries.
One witness told The Sun the 39-year-old only stopped lashing out after US Marines travelling on the flight "piled on him".
The crew then diverted and landed the plane where Hayes was hauled off and arrested by police and US Customs. The incident took place on July 26.
A criminal complaint signed by an FBI agent and filed with the court stated: "Witness statements reported that throughout the flight Hayes was loud, disruptive, threatening and abusive to other passengers and to crew members.
"Flight attendants opened a restraint kit as a precaution.
"At one point during the flight, Hayes assaulted a male passenger seated in front of him, grabbing the passenger's shirt, attempting to hit him, and grabbing his throat.
"This action left visible marks on the assaulted passenger's neck. Hayes also spat on and attempted to bite this passenger.
"Hayes was restrained by the passenger with the assistance of another passenger and crew members, and was placed in handcuffs.
"While restrained, Hayes continued to fight and be abusive, and attempted to kick the windows of the aircraft."
Hayes was travelling with his partner and one-year-old son.
A US law enforcement source told The Sun: "A passenger on board became unruly and fought several passengers while attempting to move towards the cockpit.
"During the fight, a mum dropped her baby causing injury.
"They eventually got him under control and handcuffed the guy and diverted to Salt Lake City for police to enter the plane and take him into custody."
Passengers on the flight said the atmosphere was already tense before take-off due to the chaos at Heathrow.
One described travellers as "agitated" after being stuck in huge queues at the major airport.