Heat olive oil in a large pot over medium-high heat. Add onion and garlic; saute until tender, about 5 minutes. Add pumpkin, chicken broth, water, salt, pepper, and celery seed. Bring to a boil, stirring occasionally. Remove from heat; add milk and yogurt. Puree using an immersion blender until smooth. Add ham and let stand until heated through.