Anyhow, I wrote a short (and rather unsophisticated) script to put in the startup folder so that it goes into the taskbar properties and turns on the tray auto-hiding once windows starts up, but sets the registry entry to turn it off so that the next time windows starts, the auto-hiding has been reset so icons aren't lost and the tray can be set to auto-hide again safely.
I haven't had a chance to really test it out on a reboot as I don't reboot often, but running it works fine (just don't know if it fixes the lost icons for definite).
Here it is:
;Turn on auto-hide icons but set it off in registry for next reboot to prevent lost icons from auto-log on Run, RunDLL32.EXE shell32.dll`,Options_RunDLL 1 WinWait, Taskbar and Start Menu Properties Sleep, 100 Control, Check,, Button7, Taskbar and Start Menu Properties ; Tick hide inactive icons Sleep, 100 ControlSend, Button11, {SPACE}, Taskbar and Start Menu Properties ; OK Sleep, 100 RegWrite, REG_DWORD, HKEY_CURRENT_USER, Software\Microsoft\Windows\CurrentVersion\Explorer, EnableAutoTray, 0