I was born and bred in York and go back usually once a month. I'm afraid I can't recommend any hotels as I always stay with family but I'd recommend some restaurants -The Blue Bicycle in Fossgate, a bit further down the same road is Meltons Too in Walmgate. For an indian meal The Mumbai Lounge also in Fossgate.
For B&Bs, a mate of mine has a place on Haxby Road - Mowbray House. It's a 10min walk to the city centre. Check Tripadvisor for reviews: http://www.tripadvisor.co.uk/Hotel_Review-g186346-d210406-Reviews-Mowbray_House-York_North_Yorkshire_England.html
There is also a good Indian across the road from the B&B!