We've been to BT twice, and I have not found the food prices to be bad. Can't remember exactly, but in the same range as we pay for dinners out in Fairfield Co. Connecticut and less than other places we have stayed (e.g. St. Regis Bahia Beach). The free brunch is so over the top that you don't end up eating an additional full lunch and dinner, so I think you actually make out ahead on $. The in villa BBQ is a worthwhile splurge btw ($280 for 2 people).
The two properties you're considering are near each other (same beach), which will make changing locations easy but perhaps not be that exciting. I do think the Banyan Tree is an exceptional property, however, and would be worth changing hotels for. The spa and villa experiences are both very unique in this part of the world, and the service is amazing.