Teams cover travel expenses (flights) and lodging. Major-league players get a per-diem of $100.50 per day on the road, which is enough to eat pretty darned well, plus there can be a postgame spread in the locker room anyway so they don't have to pay for food there.