There is another problem that muddies the water on this issue.
By default an empty team is filled with CPUs in positions that make no sense. This is the standard, default all CPU roster:
http://goallineblitz.com/game/roster.pl?team_id=3462The O players make sense. However, the script stops at 40 players, which means there are only 3 CBs, no SS, no FS, no K, and no P. Thus, when that team plays a game, they have a OG handling the kicking and punting, and a very winded D. This leads to tons of ST and O scores for the human team and makes it look like CPUs are worse than they really are.
I think if they changed the default CPU roster to include K, P, at least 1 FS and 1 SS (have one less OT, one less OG, one less LB, one less WR), you would see all CPU teams performing better and they would have a more complete picture of the relative strength of CPUs. As it is now, there are only a handful of all CPU teams that have reasonable rosters, so when one or more of them do well, it is easier for the Admins to pass it off as a fluke vs. CPUs actually being better then they intend. It would also serve to make scores against CPU teams more realistic, which was the stated intent of the CPU buff back in the day.