Melt butter in a heavy skillet over medium heat. Cook and stir onion in butter until lightly brown, about 5 minutes. Season with salt and black pepper.
Mix turkey and 1/2 cup cold water into onions. Cook and stir, breaking up the meat, until it begins to brown, about 2 minutes. Add ketchup, brown sugar, cayenne pepper, salt, and black pepper. Cook and stir until liquid is reduced, about 5 minutes.
Stir in Worcestershire sauce and cocoa powder. Cook, stirring frequently, until meat is cooked through and liquid is reduced and thick, 20 to 30 minutes, adding up to 1 cup water if needed.
Preheat the oven's broiler. Set the oven rack about 6 inches from the heat source.
Toast hamburger buns under the preheated broiler until golden, 2 to 3 minutes.
Remove turkey mixture from the heat; mix in cheese and green onions. Serve on toasted hamburger buns.