I'd be inclined to think that if BA did accept the passenger for transport without any additional payment, because it was able to fix the ticket, then it's still BA's fault/responsibility. An issue with a ticket shouldn't have caused a problem with the original reservation at that point. If BA cancelled the space because it didn't have a valid ticket in the first place, that should have been done well before arrival at JFK.