Hard wrapping in vim without joining

To the first question, use

:%normal gqq

That will execute gqq on each line individually.

I don't know the answer to the second question, but it could be the result of an autocommand triggered by the .txt suffix that changes 'formatoptions' or 'comments' without setting the 'filetype'. You can execute

:verbose set fo? com?

to see where those options were set last. Some GNU/Linux distributions put their own Vim configuration commands in /etc/vimrc or /usr/share/vim/vimrc.