Vim spellcheck not always working in .tex file. Check region in Vim
syntax/tex.vim already uses quite elaborate sync patterns to ensure that the syntax highlighting is accurate, but for long and complex documents, this may still fail.
Best you can do is trying to increase both values of
syn sync maxlines=200 syn sync minlines=50
(e.g. to 2000 and 500). Put this in
~/.vim/after/syntax/tex.vim to override the defaults.
syntax sync fromstart
might give the best results, but may be too slow. You'll find a description of syntax syncing at
Spell checking is not done where no syntax group are defined (or found by vim). I find it useful to enable spell checking even for the undefined group (see toplevel in vim's syntax documentation).
To do so, write the command:
syntax spell toplevel
in the file
~/.vim/after/syntax/tex.vim. Make the file if it does not exist.