あなたが挙げた三つの原因はどれも的確です。特に「文法をあまり知らない」というのが、ムラの最大の原因だと思います。
文法が弱いと、文の構造が掴めないまま単語のイメージで読み進めてしまいます。たまたま単語が分かれば読めるけど、知らない単語が出たら文全体が崩壊する。これがムラになります。逆に文法が強いと、知らない単語が出ても文構造から意味が推測できるようになります。
ムラをなくすには、まず文法の基礎を固めることが必須です。SVOCの構文、関係詞、接続詞、分詞構文など、長文に頻出する文法を体系的に学び直すといいでしょう。参考書で学ぶなら「ポラリス」のような構文特化の参考書がお勧めです。
次に単語からのイメージ読みを卒業することです。文法が分かれば、単語の厳密な意味に頼る必要がなくなります。「何となく」ではなく、文構造から論理的に意味を取る癖をつけます。
そして知らない単語が出た時の対処法を練習してください。文脈や文法的な役割から、その単語が何を意味しているか推測する訓練です。赤本などで分からない単語が出たら、意味を調べる前に文法的な位置から推測してみる。これを繰り返すと、本当の意味で「読める」ようになります。
短期的には文法の穴を埋めることに集中してください。それが最速の改善策だと思います。