As for not spamming Fire 1, it's a give and take, because in the time you wait for the previous Fire 1 to hit to see if you got a FS proc you could of casted another Fire 1. So basically if you're trying to optimize DPS, it would be better IMO to spam Fire 1 and just cancel whenever it procs. Overall canceling 5-10 times a fight is much better than delaying 30+ fire casts.

As for Thunder, I always hard cast (opener and reapplying) Thunder 2 due to shorter cast time and use TC procs on Thunder 3.