Make the guacamole first so the flavors have a chance to meld. To make the guacamole, mash avocados together in a bowl. Add in remaining guacamole ingredients. Cover and refrigerate for 30 minutes.
Heat the olive oil in a skillet over a medium heat. Cook onions over medium-low heat until they start to brown and caramelize. About 20 minutes. Add in pulled pork. Cook just until pork is warmed through. Remove from the pan and set aside.
To assemble a sandwich, butter one side of each slice of bread. With the buttered side down, place one slice of cheese on the bread. Top with 1/4 of the pork. Spoon guacamole over the top. Place a second slice of cheese on top of the guacamole and place another slice of bread on top with the buttered side facing up. Repeat with remaining ingredients.
In the same skillet that you cooked the pork and onions in, cook sandwiches over medium heat until bread is golden brown and cheese has melted. Serve immediately.