Press tofu between two clean towels with a weight on top for 20 minutes. (A cast-iron skillet works well.) In a large container with lid, mix together honey, vinegar, soy sauce, ketchup, sesame oil, garlic, ginger, red pepper flakes, and grated carrot. Cut tofu into 1-inch cubes and toss to coat with marinade. Cover container and place in fridge for at least an hour and as long as 24 hours.
Spray a large skillet with cooking spray and lightly sauté onion and pepper over medium-high heat for 3 to 4 minutes, then transfer them into a bowl to cool. Spray skillet again, then toss in tofu, reserving the majority of the marinade for now. Let the tofu brown and caramelize a bit on each side, then pour in the marinade. In a small bowl, mix cornstarch with water, then pour into marinade. Continually stir until sauce thickens. Mix in pepper and onions, cooking another minute. Serve over rice.
Per serving: 496 calories, 9 grams fat (2 grams saturated fat), 0 milligrams cholesterol, 554 milligrams sodium, 95 grams total carbohydrates, 3 grams fiber, 14 grams protein.