I always had long reboots as well, then I realized I'm not running anything like a database that needs to be properly flushed to disk, etc. So I changed DefaultTimeoutStopSec from 90 seconds to 5 seconds in /etc/systemd/system.conf and /etc/systemd/user.conf and now my system reboots fairly quickly. It still wastes time spinning up a USB drive that isn't mounted (no idea why).