Ok so it looks like the slow startup after the link comes up is because my IP stack never sends an ARP query for the default gateway.
So it just sits there not sending any packets until a gratuitous ARP or broadcast from the gateway's IP shows up.
That should get fixed.