I think that you could use these two lines instead of the Part.SaveAs..... line:
swApp.SetUserPreferenceIntegerValue swSaveAssemblyAsPartOptions, swSaveAsmAsPart_ExteriorFaces
Part.Extension.SaveAs "C:\Temp\m1329800.SLDPRT", 0, 0
The last bit in the first line could also be swSaveAsmAsPart_AllComponents or swSaveAsmAsPart_ExteriorComponents depending upon what you want.
Unfortunately there is a known bug with SaveAs and the 'Exterior Faces' option. The SaveAs call causes random COMException when the 'Exterior Faces' option is set using API.
It's logged under SPR 1001285 as a regression. This was working in SW2015 SP5 and broke somewhere between then and SW2016 SP5.
The only thing I found that was similar was to try to save as a defeatured file. It's not quite the same as exterior faces though. The other option is to use it on SW2015 SP5 until the bug is fixed.