Heat butter in a stockpot over medium heat; cook and stir leek and spinach until leek is tender, 5 to 10 minutes. Stir flour into leek mixture and cook over medium-high, stirring constantly, until mixture flour is dissolved, about 2 minutes. Remove stockpot from heat.
Mix broth, ham, and ham bone into leek mixture; cook, stirring occasionally, over low heat until soup is slightly thickened, about 15 minutes.
Blend yogurt, egg yolks, salt, and pepper together in a blender or food processor until smooth; carefully stir into soup. Cook soup until heated through, about 5 minutes more. Remove and discard ham bone.