It's not a bad price....
However, if you want to cut this further - and especially if you're staying in London too - you might want to look at flying Easyjet (
www.easyjet.com) from Luton or Gatwick to Barcelona/Madrid. A quick look at the dates you want shows availability for less than $50 on each leg incl taxes. You then need to sort out the connection from MAD to BCN - expedia shows that at £25, so about $45.
To answer one of the other questions, BA serves food & drink for free in coach on Short haul flights. With IB, I believe you need to pay (even if it's a BA codeshare).