Position a rack in the center of the oven and preheat to 350F degrees. Lightly butter a 13x9-inch or large round (11-inch) baking dish.
Melt 1 Tablespoon butter in a large skillet over medium-high heat. Add 1 chopped onion and 4 minced garlic. Cook, stirring occasionally, until tender and just starting to brown, about 10 minutes. Transfer the mixture to a medium bowl.
Melt another Tablespoon butter in the skillet, again over medium-high heat. Add 1 pound zucchini in a single layer and cook, stirring occasionally, until browned and tender, about 5 minutes per side. Transfer the zucchini to a colander and let it drain over a plate or in your sink. Melt 1 more Tablespoon of butter and add 1 pound yellow squash in a single layer and cook in the same manner as the zucchini. Add the yellow squash to the zucchini in the colander. Using a rubber spatula, press gently on the squash mixture to remove excess moisture. Stir the squash into the onion mixture and add 1 cup cheddar.
Add 1 cup corn to this mixture. (Since the skillet is still warm, I like to toss the corn into it and quickly brown it on medium-high before adding, this adds nice flavor to the corn but is not critical.)
Sprinkle 1 cup crackers in the bottom of the baking dish. Top them with the squash mixture.
Whisk 3 eggs in a medium bowl. Add 1 ½ cups milk, 3 Tablespoons basil, 1 teaspoon salt, black pepper, ½ teaspoon hot sauce and whisk until combined.
Pour the egg mixture evenly over the squash. Sprinkle the remaining 1 cup of cheddar over top, arrange 2 thinly sliced tomatoes over the cheese and then sprinkle the remaining 1 cup crackers over the tomatoes.
Bake until the casserole feels set when pressed gently in the center, about 30-35 minutes. Let stand for 5 minutes and serve.