Soak the beans overnight in ample water. Drain the next day. Place in a large pot with cold water and bring to a boil. Lower heat and simmer, skimming the foam off the top. Simmer beans for 1-1 ½ hours, until tender but firm.
In a large heavy skillet, heat 2 tablespoons of the extra-virgin Greek olive oil over medium heat and cook the onions, stirring frequently, until wilted and lightly caramelized, about 15 minutes. Preheat oven to 190°C (375°F).
Remove beans from heat and drain, but reserve the water.
Place beans in a large baking pan with 6 tablespoons extra-virgin Greek olive oil, the onions, tomatoes, a little of their own water, and honey. Mix thoroughly. Cover the pan with aluminum foil and bake for about 1 – 1 ½ hours, or until the beans are tender and the sauce is thick and creamy. Add more water throughout baking, if necessary, to keep the beans from burning. Fifteen minutes before removing from oven, add dill, vinegar, tomato paste, salt and pepper.
Sprinkle with crumbled feta, if desired, and serve either hot, warm, or at room temperature.