Put the dried beans in a large bowl or container and cover with water. Soak overnight in the refrigerator. Drain well.
Heat the olive oil in a large pot or Dutch oven over medium-high heat. Add the sausage and cook, stirring occasionally, until lightly browned, about 5 minutes. Add the onion, scallion whites, celery, bell pepper and a big pinch of salt. Cook, stirring occasionally, until softened and lightly browned, 5 to 6 minutes. Add the garlic and cook, stirring, until softened, about 1 minute.
Add the beans, 8 cups fresh water, the ham hock, bay leaves, cayenne, sage, thyme and 1 1/2 teaspoons salt to the pot. Bring to a boil, reduce to a gentle simmer and cook, stirring occasionally, until the beans are creamy and tender, about 2 hours. Add a few tablespoons water if the beans get too thick.
Meanwhile, combine the rice and 3 cups water in a large saucepan and bring to a boil. Reduce the heat to low, cover and cook until the rice is tender, and the water is absorbed, about 15 minutes. Remove from the heat and let sit until ready to serve.
Remove the ham hock from the beans and pull the meat off the bone. Chop the meat and stir it back into the beans; season with salt. Sprinkle with the vinegar; add more to taste. Divide the rice and beans among bowls; top with the scallion greens and hot sauce.