How do I get excel to not mess around with the formatting of a .csv file
Don't double click on the CSV file because that will auto format the columns. Instead create a new spreadsheet and use the Data Import and you can manually format the columns to TEXT to avoid cutting off numbers and silly auto formatting.
It's sad that on the Windows side, Excel has somehow become the defacto editor of CSV files, even though it does a sub par job at it. I had the same experience as you as I was merging two speadsheets of contacts and importing them into Google.
The problem you are having is since CSV files contain no formatting metadata, Excel loads the text file with all default formats. If it detects date on the load, guess what? If it detects leading zeros, guess what??
I gave up with Excel. And you should too!
Access is a far better tool. For one, Access, by defaults, imports all data into as text. It doesn't do any gimmick formatting unless you tell it to. Two, it actually formats CSVs correctly by allowing you to surround all fields with quotation marks. It all leave untouched leading spaces. Spread the word.
Saves lives!! Spread the word!! Don't use Excel for CSVs!!! Use Access!!