Slice eggplant into 1/2 inch slices. In a large pot boil eggplant slices 5 to 10 minutes or until tender. Drain and spread on a layer of paper towel. Sprinkle eggplant with salt and cover with a second layer of paper towel. Place pot on top of eggplant and paper towel and press down to squeeze out excess water. Arrange half of the eggplant slices in a 13x9x2 baking dish.
In another large pot brown ground beef and drain off excess fat. Add tomatoes, tomatoe sauce, garlic powder, pepper, oregano and cinnamon. Simmer for twenty minutes, stirring occasionally. Spread meat mixture over the eggplant. Top meat mixture with remaining eggplant slices.
Shred cheese. In a medium saucepan melt butter. Stir in flour and remove from heat. Gradually stir in milk and return to heat. Cook until thickened, stirring constantly. Add shredded cheese and stir until cheese is melted and sauce is smooth. Beat eggs in seperate bowl. Add a small portion of the cheese mixture to the eggs, beating rapidly, then return egg mixture to sauce in saucepan, whisking in quickly. Pour cheese sauce over the eggplant and meat mixture. Bake at 350 degrees for 30 minutes or until topping is set. Let stand 5 minutes before serving.