In a large pot, melt butter over med-high heat. Add onions and cook until softened. Lower heat to lowest possible temperature. Cook until onions are sweet and golden brown, 1½ hours. Stir occasionally and add 1 tbsp water if sticking. Generously season with salt & pepper.
Deglaze pot with sherry, scraping up bits on bottom. Alcohol smell should be gone after 3 minutes. Add stock, thyme, and bay leaf. Bring to a boil then reduce heat and simmer for 20 minutes. Remove thyme sprigs, if using, and bay leaf. Add fish sauce and vinegar. Turn off heat.
Toast bread slices, rub with garlic then butter. Preheat broiler and move oven rack to top position.
Assemble soup as follows: place 4-6 ovenproof bowls on a rimmed baking pan. Spoon a small amount of onions-broth on each bottom, then 1 slice of toast. Top with a little cheese and the remaining onions-broth. Submerge another toast and the rest of cheese over that. Broil until cheese is melted and beginning to brown. Sprinkle on chives and serve.