Prep ingredients: Peel onion, then finely chop (about 1½ cups). Peel 1 large garlic clove, then finely chop (about 1 tablespoon). Core tomatoes, quarter lengthwise, and cut into ½-inch pieces.
Cook grains: Heat 1 tablespoon oil in a small saucepan over medium-high. Add gluten-free grains and garlic. Cook, stirring, until grains are toasted and garlic is fragrant, 1–2 minutes. Add 1 cup water and ¾ teaspoon salt. Bring to a boil. Cover and cook over low heat until water is absorbed and grains are tender, about 20 minutes. Remove from heat, cover to keep warm.
Sauté aromatics: While grains cook, heat 2 tablespoons oil in a medium saucepan over medium-high. Transfer onions to saucepan, then cook until beginning to brown, 6–8 minutes. Add curry powder and 1 tablespoon oil, then cook until fragrant, about 30 seconds.
Build curry: Add tomatoes, kidney beans and their liquid, and 1 teaspoon salt. Cover and bring to a brisk simmer over medium-high. Continue cooking, partially covered and stirring occasionally, until the tomatoes are soft and the curry has thickened slightly (about 3 cups), 9–11 minutes.
Make raita: Meanwhile, finely chop most of the cilantro leaves and stems, reserving a few whole leaves for garnish. Trim ends from cucumber, then coarsely grate into a medium bowl using the large holes of a box grater. Stir Greek yogurt and a pinch each salt and pepper into cucumber.
Finish & serve: Stir chopped cilantro into curry, then season to taste with salt and pepper. Stir in water, 1 tablespoon at a time, if curry seems thick. Serve curry over grains pilaf with a dollop of raita and garnish with whole cilantro leaves. Enjoy!