Мне кажется что вам в ваш первый .htaccess нужно тоже добавить строчки:
Код:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
Имено они определяют что если для переданного URL сервер не может найти файл или папку, то передает URL на обработчик index.php, а не выдает свою собственную страчнику 404.