Preheat oven to 400°F.
Heat an oven-safe skillet over high heat. Add olive oil, red pepper, and onions. Sauté 3 minutes. Add mushrooms and sauté additional 3 minutes. Season with salt and pepper. Place skillet in oven and roast 15-20 minutes.
Heat a sauté pan over medium-high heat. Add 1 tablespoon butter, a splash of water, spinach, and a pinch of salt and pepper. Cook just until spinach is wilted. Reserve.
For béchamel sauce: Heat saucepan over medium heat. Add 1 tablespoon butter and minced shallot or onion. Season with salt and pepper; stir for about 3 minutes, or until translucent. Add flour and stir to coat. Stir in the milk, a little at a time to avoid lumping. Add nutmeg and cayenne and bring to a low simmer, stirring often to keep from sticking. Cook at least 10 minutes; stir in mustard and let stand off heat.
Heat skillet or sauté pan over medium heat. Butter one side of each bread slice or roll and place 4 slices, butter-side down, in pan. Top with slice of Gouda, 2 tablespoons spinach, and 1/2 cup of peppers-onions-mushrooms. Top with 2 tablespoons of the béchamel sauce, another slice of Gouda, and a slice of rye, butter-side up. Grill to melt the cheese and toast the bread to golden brown, flipping sandwiches once.