Chop the garlic and separate the basil leaves from the heavy stems. Grate the parmesan cheese.
Add the basil, garlic, pine nuts, Parmesan, 2 tablespoons olive oil, lemon juice, salt, and pepper to a food a food processor. Blend until smooth.
Slice the tomato into thick slices and slice the mozzarella. Butter the bread, then layer the unbuttered side the pesto with 2 big slices of mozzarella, and 1 to 2 slices of tomato.
Add 1 teaspoon of oil to a cast iron skillet and bring heat to medium high. Once hot, put the sandwich into the pan, cover, lower heat to medium, and cook for 5 minutes on each side or until the bread is toasted and the cheese is melted. Repeat with two more sandwiches.