Для чего тут модуль csv? Он и вставляет перевод строки, потому что это обязательно по формату CSV (comma-separated values). Там должно вставляться в любой системе \r\n. Это признак конца записи. И этот признак конца записи изначально сделан так, чтобы открываемый файл при открытии всегда открывался правильно в любой системе, в какой бы системе с какими бы концами строк, свойственных системе, его не открыли. На винде концы строк - \r\n, в лине концы строк - \n, в других системах концы строк \r.
CSV - это формат хранения данных, у которого есть свои правила, а не просто какие-то строчки.
https://en.wikipedia.org/wiki/Comma-separated_valuesЕсли тебе нужно что-то писать в файл, используй print() и строковые методы.
Пример вывода в файл stdout
>>> import sys
>>>
>>> lst = ['a', 'b', 'c', 'd']
>>>
>>> string = '&'.join(lst)
>>>
>>> print(string, end='', file=sys.stdout)
a&b&c&d>>>