1. If you have to use divs and spans instead of more
semantic elements like lists and headings,
use precise, descriptive IDs. Same for classes.
2. Use WAI-ARIA in your HTML[1].
3. Link skips.
This[1] is the official CSU Sacramento checklist for accessibility, it might help flush out some of OP's checklist items. It is a bit outdated (2009) so I wouldn't necessarily recommend taking it wholesale.