A 3 foot ball python would weigh in at roughly 900-1200g give or take.
You're currently feeding (at largest) 30g mice.
You could EASILYT be feeding your ball python 100-125g rats at that size.
So yes, I believe you are underfeeding your ball python.