Oh, I forgot to mention that we attended church on Sunday and things went MUCH better. Thank you everyone for your hints and ideas.
Ethan started throwing a fit right as we were about to enter and we started getting stressed out. J and I took a moment to become calm, then dealt with Ethan calmly. One of the things we've found is that ignoring the behaviour, especially in public, is quite effective. On the way, we'd talked about what exactly was going to happen. We were going to put Gwennie in her class, then go into the church and sing and pray, then Ethan would go to his class. When the children were dismissed, the lady behind us asked if she could walk Ethan to the class and I agreed. I think this helped so much too... He generally acts a lot better around non-family. He went without any fight and came out happy and smiling. Whew, what a relief!
Unfortunately, we won't be attending the next two weekends because Jason is on back-to-back business trips, but hopefully our next visit will continue on this happy trend.