If you will be flying coach/economy, American is almost certainly the better choice for comfort. On American, you'll have considerably more room between you and the seat in front of you (compared to the room on British Airways). Food and amenities are similar. Service can be highly variable dependending on the individuals on the flight, though my experience is that BA more consistently delivers good service.
If you will be flying business or first class, BA is the absolute better choice, with far superior comfort in their seats.