Hmmm, the error seems to be related to checksums, as if U-Boot isn't getting all of the kernel or something.
Failing
Data Size: 1577517 Bytes = 1.5 MB
Succeeding
Data Size: 1572417 Bytes = 1.5 MB
Crossing some "imaginary" line in U-Boot, perhaps??
>>> 1.5 * 1024 * 1024
1572864.0
I'd try a build with a smaller kernel. Try, perhaps, adding to your .config
some options to strip down things more -- maybe that will drop your kernel below 1,572,864 and it will "magically" work. (This is a pure guess.)
CONFIG_STRIP_KERNEL_EXPORTS=y