Have not used Excel files in AGOL, but ArcMap often had issues with this.
Seems ArcMap would look at the first value in each field (first row of data) and determine the type from that.
If there was anything but a number (even a blank) in the first row, it brings it in as text.
So, I just added a dummy first line with an appropriate value for each field, then delete that line after import.
Not sure if this would matter in AGOL, but could try.
R_