Файл .csv - это простой текстовый файл, вы просто отправляете заголовки, которые открывают его в Excel.
Если вам нужен файл того же формата, но не открытый в Excel, просто не отправляйте эти заголовки:
header("Content-type: application/vnd.ms-excel");
header("Content-disposition: csv" . date("Y-m-d") . ".csv");
header("Content-disposition: filename=".$filename.".csv");
И вместо этого пошлите это:
header('Content-Type: text/plain');
Если вы хотите принудительно загрузить текстовый файл, попробуйте следующее:
header('Content-Type: application/force-download');