Heat olive oil in a large skillet over medium high heat. Add ground beef and cook until beef has browned, about 3-5 minutes, making sure to crumble the beef as it cooks; stir in taco seasoning. Drain excess fat.
Stir in cheese and tomatoes until the cheese has just melted.
With a butter knife, spread butter on one side of each slice of bread. Place 4 slices, buttered side down, on work surface. Divide ground beef mixture evenly on all slices. Top with remaining slices, buttered side up.
Heat the skillet over low heat. Add sandwiches and cover; cook, turning once with a spatula, until golden brown and the cheese has completely melted, about 2-3 minutes per side.