In a bowl, beat cream cheese and butter until smooth. Combine flour; gradually add to creamed mixture (dough will be stiff). Turn onto a floured surface; gently knead 10 times. Cover and refrigerate at least 2 hours.
In a skillet, cook bacon until crisp. Remove bacon; reserve 1 tablespoon drippings. Saute onion and garlic in drippings until tender. Remove from heat; stir in bacon, spinach, cottage cheese and seasonings. Cool.
On a lightly floured surface, roll dough to 1/8-in. thickness. Cut into 3-in. circles; brush edges with egg. Place 1 heaping teaspoon of filling on each circle. Fold over; seal edges. Prick tops with a fork. Brush with egg.
Bake at 400° for 10-12 minutes or until golden brown. Serve with sour cream or salsa if desired.