Are there any tricks to speed up the IPNS lookup time? It seems to take something like 5-10 seconds per request, where if I'm looking up a few published links it can take quite a while.
I don't think there are any major tricks right now. There's at least one issue for this here: https://github.com/ipfs/go-ipfs/issues/3860
The fact that ipfs.io uses an /ipfs/ dnslink record instead of an /ipns/ one adds some weight to the assumption that there's probably not currently a way to make IPNS lookups fast. My impression is that there are some significant changes planned for IPNS so this may change in the future.