A 3 month old should be eating about every 3 hrs or so during the day, eating for 10-30 min per feeding, and waking to eat 2x per night is still expected at this age. He should gain about 1/2 pound/week but more or less is ok. Sucking hands is normal for this age because they CAN, it is fun to do and soothing, it doesn't always mean hunger.
If he is nursing and you are still supplementing, any idea what his weight gain is?
It sounds more like a sleep problem, those night wakings are brutal!