Combine first 8 ingredients in a large Dutch oven; cover and simmer 1 hour or until chicken is tender.
Remove chicken from broth; let cool. Bone chicken; cut into bite-size pieces, and arrange in a 13- x 9- x 2-inch baking dish. Strain 1/4 cup broth, and pour over chicken; set aside. Reserve remaining broth.
Beat eggs until frothy; gradually add milk and butter, beating well. Add 2 cups flour and 1/2 teaspoon salt, mixing well. Pour egg mixture over chicken. Bake at 350° for 40 minutes or until pudding is set.
Simmer reserved broth, uncovered, for 40 minutes while pudding is baking. Remove broth from heat; strain. Pour 3 cups broth in a small saucepan. Blend remaining 1/2 cup flour with a small amount of water, mixing to form a smooth paste; stir into broth. Cook over medium heat, stirring constantly, until thickened and bubbly. Stir in remaining salt, pepper, and paprika.
Cut chicken pudding into squares, and serve with gravy.