As it is right now, anything smaller than a human will, when made in to an animal-person, always be no less than half a human's size. While Sperm Whale man are over 20 meters in height.
So my suggestion is to use a 2-variable formula instead of the current 1 variable "average" used now.
The first variable is the function of power you use to average the size and the second the size it's brought closer to. In this way, it becomes a matter of relative size instead of a matter of absolute size in grams. The benefits to this formula is that it's independent of any unit of measurement used, and doesn't favor large or small creatures in any way.
Example:
GRAVITATE_BODY_SIZE:2:70000
This would first divide the creature's size by 70000 Urist/grams, then put that number to the power of (1/2), before re-multiplying it by 70000 Urist again. Thus a creature 4 times larger than a human would form an animal-person twice the size of a human, and an animal a quarter the size of a human would be half the size of a man as an animal person.
Personally, I feel using a Cubed Root (3) instead of a Square Root works best, as it gives about the following sizes in the most extreme cases:
Beetle Man: 1700 (Between the Sizes of a Fluffy Warbler/Little Penguin, or about 1/40th a human in size/mass)
Redpanda Man: 29000 (About the size of a large dog)
Dwarf: 50000
Wombat man: 52750
Human: 70000
Moose Man: 137000
Elephant Man: 290000 (About the size of a Yeti)
Sperm whale Man: ~500000 (About the size of a Tigershark or Horse, or 7 times a human in size/mass)
Now, because humans are an above-averagely large animal already, this does cause a discrepancy towards the smallest animal people being unusually small. This could either be seen as a feature/quirk of just how tiny their source animal is, or the formula could except a third variable for min size. First using a linear-gravitate formula of averaging out their size, and then applying the curve. In this way, you could do something like the following:
GRAVITATE_BODY_SIZE:3:70000:1500
And all animals smaller than 2000 would be averaged with 2000, ranging from 750 to 1500 in size before being gravitated towards 70000. Ensuring that no animal is more than 7 times a human's size. Roughly matching the Sperm whale man's upper size.
And because all sizes are being modified on their relative size to humans, you could use any number of different powers and retain the difference of Beetles/Sperm-whales being the two opposite extremes. So you could stick to a power of 2 and have Sperm Whale Men be 1300000 in Size (Between a Narwhale and a Hippo, or 19 times larger than a human) and have Beetles settle somewhere around Size 3500 or 7000 depending on how much you set the min for them (so between 1/10th to 1/20th the size of a human)
I'm not sure what you could do if you wanted to limit the other extreme, such as having a special "Pocket pet" modded creature-type where everything is smaller than 1000 in size. Though with how sharp the curve can get, you could potenitally just set the "GRAVITATE_BODY_SIZE" tag to something like 10 with a power of 3 and watch a Size 1327 Pocket Pet Dragon wreck !!Fun!! across a fortress. In addition, setting the Power to 1 could maybe default to the old strictly Linear formula for those who just want to use that. If non-Integers are allowed, you end up with it Gravitating sizes *away* from the one you listed. Suddenly Dragons potentially becoming 100s if not 10000s of times bigger.