Preheat oven to 375 degrees.
Press the block of tofu for 30 minutes. Discard the excess liquid. While the tofu is pressing, prep the tomatoes and make the vegetable filling.
Cut the tops off the tomatoes and use a grapefruit spoon to carefully scoop out the seeds and membranes. Set the tomatoes aside until the filling is ready.
In a large pan over medium heat, saute the diced onion and bell pepper in 3-4 tbsp of low-sodium vegetable broth until soft. Add the minced garlic, 2 tbsp tomato paste, 2 tbsp chili powder, 2 tsp cumin, 2 tsp smoked paprika, ¼ tsp salt, and ¼ tsp black pepper to the pan. Stir to combine and let it cook for 2-3 minutes or until fragrant.
Push everything to one side of the pan and add the block of tofu to the other side of the pan. Use a spatula to break up the block of tofu into small crumbles. Stir to coat the tofu in the seasonings.
Add the black beans, corn, cilantro, and lime juice to the pan. Stir to combine the filling.
Drizzle a little bit of water (or vegetable broth) in the casserole dish to stop the tomatoes from sticking while they bake. Use a large spoon to fill each tomato with the tofu and vegetable mixture up to the top of the tomato. Arrange the tomatoes in the casserole dish and put the tomato tops back on. Bake for 30 minutes or until the tomato skin starts to blister.
Carefully remove the tomatoes from the oven and let it cool for a few minutes before serving. You can garnish the tomatoes with fresh cilantro, salsa, vegan sour cream, vegan shredded cheese, or mashed avocado.