Non-linear error in ADC readings
ADCs are naturally non-linear.  Roughly the transfer function starts at 0, then increases faster than the expected linear transfer function until it reaches #bits/2 and then curves back to where it should be.  I can draw a diagram if this explanation is not clear.

The main problem is that you are assuming the converter has the linear transfer function with Voltage = 5V/250*(value from ADC). It does not and the error isn't even linear, as you've already observed.  Given the shape of the real transfer function, the data provided by Andy, and the way you are computing the errors at higher voltages the pattern you are seeing is as expected.

I don't think you stated, but let me make a conjecture based on this analysis: Your ADC consistently overestimates the voltages.  This is because the slope (5V/250) is near the maximal of the slope of the real transfer function. 

Edited to add: Maybe it was clear from your post they are being overestimated since Err % is always > 1.  It is clear if Err%=(ATMega reading)/(real value)

2nd edit: Actually, what you can do easily and see how the results change: Put 20V across the voltage divider.  You will get a number say $N$ then define psu_adc_corr=N and myAdc = 20/psu_adc_corr=20/N.  I would be interested to see what you get.