Just read this thread and you've gotten some excellent suggestions. One not mentioned is change the hook style. That round bend hook is typical for buggers, but a hook with more gap will help keel the fly better. I had a similar problem with a size # 2 foam stonefly pattern, it would twist like crazy and always landed on it's back. The problem was the wing on the fly, which after clipping it off, solved the twisting issue, but not the landing on it's back completely. I was using a round bend style streamer hook, which is often used on that type of pattern. I was using the fly for bass, so a hook with a wider gap, wasn't a bad thing.
Try a hook like Gamakatsu B10S, Tiemco 8089, or Allen B200.
IMO, the issue is in your casting and tippet size, but everything mentioned should resolve the problem. I use bulk line as tippet for bass, and was using 15 lb that day with that foam fly, so I was sure it wasn't my tippet being too light.
BTW, if you ever decide to tie moth, damsel or dragonfly adult patterns, because of the manner that wings are often added, they're notorious for causing spinning & twisting while casting, so the issue you're having is not anything new.