Euro SEPA transfers between Switzerland and EU are typically free. At least the major Swiss banks don't charge anything extra. International transfers in other currencies (e.g., CHF, GBP) still incur a fee, though.
The same applies to most German banks in the other direction but this is by business decision and not by law. Thus some banks do charge a fee for that.
You should use another bank. I've never heard of anything like that when I was living in Germany (I used Comdirect and N26, lots of my coworkers recommended DKB and ING DiBa also).