It's not a requirement to put middle names on an airline ticket - even in the US. What matters is the APIS data (not necessarily the same as the ticketed passenger name) in the PNR that is sent to border control - as long as this has the middle name then that's fine.
Do ensure that you put it in your ESTA application though.
I never put my middle name in the ticket passenger name but do put it in the APIS data. The reason behind this is because if a certain DCS or CRS/GDS does not support middle names/initials it will merge the first name and middle name together so a name may become SMITH/JOHNCITIZEN with no space.
Edit: From the AA agents portal:
Secure Flight Passenger Data (SFPD) FAQs
SFPD (secure flight passenger data is the APIS data I refer to that is submitted to US CBP).
Q: Is the middle name or initial required for Secure Flight documentation?
A: For SFPD data the passenger’s full name as it appears on a person's valid government-issued photo identification that will use when traveling. If the government-issued ID includes a middle name or initial, it must be included in the SFPD SSR when booking a reservation.
NOTE:
The middle name or middle initial is not required in the name field of the reservation for ticketing or upgrading purposes. GDS functionalities differ and may not support the middle name or middle initial. Check with your GDS Help Desk for clarification on Name Field requirements.