In a small bowl, combine garam masala, turmeric, curry powder, paprika, and salt; mix to combine. In a separate larger bowl, combine yogurt and half of spice mixture; mix well. Add tofu and gently toss to coat. Spoon mixture into a storage-size zip-top bag and refrigerate for 30 minutes (or up to 12 hours).
Preheat oven to 400ºF and line a rimmed baking sheet with parchment paper. Arrange yogurt-coated tofu pieces on the baking sheet in a single layer so that they aren't touching. (Discard any extra marinade). Bake in the center rack for 30 minutes, gently turning the tofu after 15 minutes, until golden and crispy.
While the tofu bakes, heat oil in a large skillet over medium heat. Once hot, add shallots; cook 3 minutes, until soft. Stir in tomato paste, garlic, ginger, and remaining spice mixture; cook 2 more minutes, stirring often, until tomato paste turns brick red and begins sticking to the pan.
Add broth, tomato sauce, and coconut milk; whisk to combine. Gently simmer masala sauce, uncovered, until it reduces and thickens, about 12 to 15 minutes.
Remove tofu from oven and transfer to masala sauce; stir to coat. Serve tikka masala over rice and garnish with fresh cilantro and a dollop of yogurt.