以前から、面倒なことをやって来ましたが、これが決定打!です。
df = pd.DataFrame([{field: None for field in df.columns.values}])
Qiita: 既存のDataFrameから空のDataFrame作成
UTF-8(BOM)にするとExcel読み込み時に問題がない
df = df.fillna('')
to_csv()メソッドの第一引数に既存のcsvファイルのパスを指定した上で引数mode='a'とすると、単純に既存ファイルの末尾にDataFrameの内容がそのまま追記されます。
df.to_csv("data/dst/to_csv_out_a.csv")
df.to_csv(
"data/dst/to_csv_out_a.csv",
mode='a',
header=False)