Are you weighing the feeders? I've purchased "small" rats that weighed 40 grams, and others were 90 grams, depending on the vendor, the vendor's definition of "small" rat, and even who was working that day when pulling live feeders at a local exotic pet store.

I would feed a small rat on the lower end of small - 60 grams at most. Monthly should be fine if you're taking the snake out daily for exercise unless it's in shed.

Also it's counter-intuitive for a ball python because they do like their snug, secure little racks, but if it's in a rack try housing it in a 4x2 enclosure for a while so it will stretch out and move around more on it's own.

Did he fast over the winter?