2-3 hours in the gym is a looooooooong time in my book (maybe others can have some input on that). But i think the biggest factor is that your calories r so damn low! Change your routine and up your calories. If i stuck with the eating and workouts i'd gained around 1-2 pounds a week. I've never tried the NoXplode - not big on a lot of supps just what seems to work for me.
It might help to log your workouts to make sure your strenght is going up. One way i did this was say on incline bench (1st workout on monday) i'd start with 45 lb dumbbell at 10 reps then go up by 5's. so my set would look like 45-50-55-60-65. When i could do the 65's for say 12 times, then next week my set would look like this: 50-55-60-65-70, i did this and got to doing the 95's around 6-8 times depending on energy level ans have since platued
It might help to log your workouts to make sure your strenght is going up. One way i did this was say on incline bench (1st workout on monday) i'd start with 45 lb dumbbell at 10 reps then go up by 5's. so my set would look like 45-50-55-60-65. When i could do the 65's for say 12 times, then next week my set would look like this: 50-55-60-65-70, i did this and got to doing the 95's around 6-8 times depending on energy level ans have since platued