Preheat oven to 375 degrees. Wrap beets in parchment-lined foil. Roast until tender, about 1 hour. Meanwhile, drizzle onions with oil, tossing to coat. Season with salt and pepper. Spread evenly in a single layer on a baking sheet. Roast, turning once, until golden brown and tender, about 45 minutes.
Remove skins from beets; cut beets in half if large and leave whole if small. Toss beets with 1/2 cup vinaigrette and the herbs. Arrange onions on a platter. Drizzle with remaining vinaigrette. Top with beets; garnish with oregano flowers.