Primeira pergunta:
Você deve remover block do valor padrão de 'foldopen' :
set foldopen-=block
Veja :help 'foldopen' .
Segunda pergunta:
Você pode tentar esses mapeamentos
nnoremap <expr> } foldclosed(search('^$', 'Wn')) == -1 ? "}" : "}j}"
nnoremap <expr> { foldclosed(search('^$', 'Wnb')) == -1 ? "{" : "{k{"