Hives can be caused by various foods, so if you find yourself eating the same foods all the time with little variety, that could be the cause. (I suppose your doctors already considered that, though.)
I agree with everyone else that your example of a day's food seems too low. When calories go too low, your body becomes stressed (creating an unfavorable hormone profile) and shuts down some its processes - you end up with the classic problem of a slow metabolism.
My suggestion would be to add some fat into your diet, a little butter on the toast or olive oil on your veggies. You might not be absorbing enough fat-soluble vitamins because of the low amounts of fat in your diet, which can contribute to body stress. Just my two cents.

