In a mixing bowl, combine the ground beef, breadcrumbs, egg, Parmesan cheese, garlic, onion powder, salt, pepper, and thyme. Mix until well combined.
Shape the mixture into meatballs, about 1 to 1.5 inches in diameter.
Optional: In a skillet over medium heat, heat 1 tablespoon of olive oil and brown the meatballs for 3-4 minutes on each side until golden.
In the slow cooker, add the sliced onions, 2 tablespoons of olive oil, salt, pepper, and sugar. Stir to combine.
Place the meatballs on top of the onion mixture in the slow cooker.
In a separate bowl, mix together the beef broth, French onion soup, soy sauce, and thyme. Pour this mixture over the meatballs and onions.
Cover and cook on low for 6 hours, or until the meatballs are cooked through and the onions are caramelized.
In the last 15 minutes of cooking, sprinkle the shredded Swiss cheese over the top and cover to allow it to melt.
Serve hot over pasta, rice, or with crusty bread, spooning the onion sauce over the meatballs.