Apps change their positions whenever the phone is rebooted
As you described the app icons are placed at the end of the list, the most likely reason lies in the order of things done during the boot process:

The SDCard is mounted after the system broadcasts its BOOT_COMPLETED event, so apps moved to the card become visible later than those installed on device storage. With a little unlucky timing, the app drawer is already initialized before mounting of the SDCard is completed, so those apps are added afterwards, and thus to the end of the list (as it, btw, is probably done as well with apps you install).

There are multiple solutions to this: Of course, you can move those SDCard-installed apps back to device storage, but that's not always an option (especially with only little device storage available on some devices). Alternatively, you could simply check a different launcher, as not all launchers behave the way described. Many launchers I've tried automatically sort the app drawer, so even when I've just installed a new app it appears normally in alphabetical order.