"This is a personal favourite, and it is easily modified to suit your own personal taste. Be dangerous, experiment, and when in doubt, add more cheese!
WARNING: This is definitely a cheat day sandwich. Enjoy!"
Place bacon in a skillet over medium-high heat; cook, turning occasionally, until evenly browned, about 10 minutes. Drain bacon on paper towels; drain all but about 2 teaspoons bacon fat from the pan.
Butter each slice of sourdough bread on one side. Place bread, buttered-side down, in same skillet over medium low heat. Place ingredients evenly on one slice of bread in this order: half of Gouda cheese, bacon slices, caramelized onions, and remaining half of Gouda cheese. Top with second bread slice, buttered-side up.
Cook sandwich until cheese on bottom is melted and bottom slice of bread is golden brown, about 5 minutes; turn sandwich over and cook until all cheese is melted and sandwich is golden brown on both sides, about 5 minutes more.