Combine butter, shortening, and oil in a large mixing bowl; beat until well blended. Gradually add 2 cups sugar, beating well. Add milk, 2 eggs, and vanilla; mix well.
Sift together 3 cups flour and baking powder; add to creamed mixture, beating until smooth. Sift remaining flour; gradually stir in enough flour to make a stiff dough.
Roll into 6-inch ropes; shape each rope into a circle, gently pinching ends together to seal. Place on greased cookie sheets.
Combine 2 egg yolks, water, and remaining sugar, beating well. Lightly brush each cookie with egg yolk mixture; sprinkle with sesame seeds, if desired.
Bake at 350° for 15 minutes or until lightly browned. Let cool slightly on cookie sheets; remove to a wire racks to cool completely.