To make lamb sauce: Cook onion in oil in a 4-quart heavy pot over moderately low heat, stirring, until softened, about 3 to 5 minutes. Add lamb and cook over moderately high heat, stirring and breaking up lumps, until no longer pink, about 5 minutes. Add garlic, salt, oregano, cinnamon, sugar, and pepper and cook, stirring, about 2 minutes.
Stir in eggplant and tomatoes and gently simmer, covered, stirring occasionally, until eggplant is just tender, about 40 minutes. Remove lid and simmer, stirring occasionally, until sauce is thickened, about 15 minutes more. Season with the salt and pepper.
Preheat oven to 425 degrees F.
Make cheese sauce and cook pasta while lamb sauce is simmering: Melt butter in a 2-quart heavy saucepan over moderate heat, then stir in flour and cook, stirring, for 2 minutes. Whisk in milk and add garlic clove and whole clove, then bring to a boil, whisking constantly. Reduce heat and simmer, whisking occasionally, for 5 minutes. Add feta, salt, and pepper and cook, whisking vigorously, until cheese is well incorporated.
Beat eggs in a large bowl and gradually add sauce to eggs, whisking. Cook pasta in a large pot of boiling salted water until just al dente, then drain in a colander. Toss half of pasta with lamb sauce and half with cheese sauce.
Assemble pastitsio: Pour pasta with lamb sauce into a wide shallow 3-quart baking dish, spreading evenly. Spoon pasta with cheese sauce on top, spreading evenly. Bake pastitsio, uncovered, in middle of oven until bubbling and top is golden, about 25 to 30 minutes. Let stand for 5 minutes before serving.