Hey my man,
Glad to see that the weight is going up, that is great news.
I can see why you're a bit tired when you're wanting to lift weights. Your arms are tired from all the hitting! If you're main goal is to put on some size i'd recommend leaving the hitting til the end of the workout. Put all your energy and focus into the weights kill it then do what you can on the cardio side of things after. Or do it on a completely different day.
As for foods you should stick to for gaining weight i'd stick to the following:
Pasta's - white, brown, brown rice, whole grain
Potatoes - white, red, sweet
eat as many vegetables as you can those will help fill you up
nuts - walnuts, almonds, nut butters (pb, almond)
I'd stick with a lot of whole foods and as much of them as possible. this will keep your body feeding and fuller longer. A weight gainer shake is good, but the quality of the calories just aren't there. Wholes foods are the best way to go.
stick with the protein post workout, but you can also add a bit of dextrose or oats to your post workout shake to help trigger an insulin response and jump start recovery and growth.