Preheat oven to 350 degrees and grease a 9x13-inch or slightly smaller baking dish.
Melt butter in a large nonstick skillet over medium-high heat. Add onion and mushrooms and cook 5 minutes, or until onion is soft and mushrroms are lightly browned.
Sprinkle flour over onions and mushrooms. Stir and cook for 1 minute, being sure to mix the flour in well.
Gradually whisk in milk. Bring to a simmer. Once thickened, add cream cheese and whisk until melted and blended in.
Add parsley, nutmeg, Italian seasoning, crushed red pepper flakes, and ham. Remove from heat and season to taste with salt and pepper.
In a medium bowl, stir together cottage cheese, egg, Parmesan cheese, and pepper.
Spread about 1/2 cup of ham sauce in bottom of prepared baking dish.
Lay 3 lasagna noodles side by side.
Spread 1/2 cottage cheese mixture on top of noodles.
Spreead 1/3 of the ham mixture on top of cottage cheese.
Sprinkle on 1/3 of shredded Montery Jack cheese.
Lay 3 more noodles down and spread with remaining cottage cheese mixture.
Spread 1/2 the remaing ham mixture and 1/2 the remaining Monterey Jack cheese on top.
Finish off with remaining 3 noodles and the rest of the ham mixture, and the remaining shredded cheese.
Cover baking dish with foil. Spray the iside of the foil with cooking spray so it will not stick to cheese.
Bake 30 minutes. Remove foil and bake another 10 to 15 minutes.