Cut the avocados in half, remove the pit, and scoop the flesh into a bowl. Mash to your desired consistency—I prefer leaving it slightly chunky for better texture in the sandwich. Add the minced garlic, diced red onion, seeded and minced jalapeño, fresh cilantro, lime juice, sea salt, black pepper, and ground cumin. Fold in the diced roma tomato gently at the end to avoid breaking it down too much. Taste and adjust seasoning as needed.
Lay out all 4 bread slices. Spread a generous layer of guacamole from Step 1 on two of the slices, leaving a small border around the edges. Layer one slice of sharp cheddar and one slice of Monterey Jack cheese on top of the guacamole on each slice. Top with the remaining bread slices to create two complete sandwiches, pressing gently so the cheese and guacamole stay in place.
Heat a skillet or griddle over medium-high heat for about 1 minute until hot. Spread softened butter evenly on the outside of each assembled sandwich on both sides. Place sandwiches butter-side down on the hot skillet and cook for 2-3 minutes until the bread is golden brown and crispy. I like to press gently with a spatula to ensure even contact with the pan and help the cheese melt. Carefully flip and cook the other side for another 2-3 minutes until equally golden and the cheese is fully melted inside.
Transfer the grilled cheese sandwiches to a cutting board and let them rest for 1 minute—this gives the cheese a moment to fully set so it won't ooze out when you slice. Cut diagonally and serve immediately while still warm.