In a large mixing bowl, combine ground meat with chopped tomato, onion, garlic, rice, herbs, olive oil, egg yolk, and seasonings. Mix thoroughly until evenly combined. Shape into about 12 medium-sized meatballs and refrigerate for at least one hour to firm up.
Heat half of the olive oil in a large pot over medium heat. Add diced tomatoes and garlic, cooking until softened and fragrant. Stir in tomato paste and tomato sauce, allowing them to cook briefly to enhance flavor.
Pour in hot water or stock and add the bay leaf. Bring to a strong boil, then gently drop in the chilled meatballs one by one. Lower heat slightly and simmer for about 20 minutes with the lid slightly ajar.
Stir in shredded cabbage, diced bell pepper, celery, and rinsed rice. Add the remaining olive oil and continue simmering until cabbage is tender and rice is fully cooked. This step thickens the soup naturally.
Once everything is tender, remove from heat and stir in fresh parsley, dill, and lemon juice. Allow the soup to rest for about 30 minutes before serving so the flavors fully develop.