Press the tofu. Line a sheet pan with several layers of paper towels, then place block of tofu on top. Place another layer of paper towels on top of tofu and weigh down with something heavy, like a Dutch oven or sheet pan with cans on it. Let sit for 30 minutes.
Meanwhile, make the mango sauce. Heat oil in a medium saucepan over medium heat. Cook shallots until softened, 2 minutes. Add ginger and garlic and cook until fragrant, about 1 minute. Add mango, 1 cup water, orange zest and juice, rice wine vinegar, and fish sauce. Cook until mango cooks down, stirring frequently so that the bottom of the pot does not burn--you might need to turn your heat down. Transfer mango mixture to the bowl of a food processor or a high speed blender and process until smooth (you might need to add more water for desired consistency).
Make the tofu. Remove tofu from pressing station and slice into 1-inch cubes. In a large bowl, toss tofu cubes with cornstarch and salt.
In a large skillet, heat canola oil over medium high heat. Cook tofu until golden brown and crispy, about 6 minutes per side. Transfer to a paper towel lined sheet.
Adding more oil if necessary, cook shallots and carrot until softened, about 2 minutes. Add mango sauce and cook until heated through, about 2 minutes (if sauce is too thick, add some water). Add tofu and toss in mango sauce until fully coated. Serve immediately over white rice with cilantro and lime juice.