In a small skillet, cook the bacon until the fat is rendered out. Drain bacon, reserving the fat in the pan
Heat olive oil in a large skillet. Add onions and salt. Cook onions over low heat, stirring occasionally, until they are soft and deep golden in color, about 1 hour. Add water if needed. Add the vinegar in the last minute of cooking. Cool to room temperature.
In a large bowl, stir together the mayonnaise, sour cream, onions and bacon.
Add vegetable oil to the skillet with bacon fat. Reheat on medium-high until the oil simmers. Add the shallots, lower the heat, and cook until golden brown, stirring occasionally, about 2 minutes. Drain, and garnish dip with fried shallots.