Place tofu on a plate and cover it with another plate. Put a 3- to 5-pound weight on top of the upper plate. Press tofu for 20 to 30 minutes. Afterward, drain and discard the accumulated liquid.
Combine vinegar, soy sauce, olive oil, garlic powder, salt, cayenne, marjoram, and black pepper in a small bowl.
Cut each tofu piece crosswise into 6 thick slices. Place the slices in a baking dish. Pour marinade over the tofu slices,turn to coat, and chill, covered, for at least 30 minutes or up to 48 hours. It is better to marinate the tofu for longer, but shorter is also acceptable.
Preheat an outdoor grill or charcoal grill to high heat. Reduce heat to medium and lightly oil the grate.
Remove tofu slices from the marinade, shake off excess marinade, and keep the remaining marinade to make the sauce.
Grill the tofu on the preheated grill, turning once, for 10 to 15 minutes total until well browned but before the grill marks get black. Then, transfer the grilled tofu to a platter and cover it with foil to keep it warm.
In a saucepan, bring the remaining marinade to a boil and simmer until it reduces to approximately 1 cup, which takes around 2 minutes. Pour the reduced marinade over the grilled tofu and serve it hot, warm, or at room temperature.