I think that the one infant is creating the problem. When I search for four adults, I see availability:
I know that AA does not charge for lap infants on domestic travel; not sure about U.S.-Mexico flights. Unless you want a separate seat for the infant, I would call AA and ask if there is any charge for lap infants on the JFK-CUN route. If there is no charge, just book for two adults and one child on ba.com.