Preheat oven to 400 degrees F. Butter a 10x15-inch baking sheet. Lightly beat egg yolks and set aside. Heat milk to make a roux: Melt the butter, add the flour, and stirring constantly, cook for 1 to 2 minutes over medium heat until the roux is lightly colored. Whisk in heated milk and cook for another 3 to 5 minutes, stirring constantly, until it just begins to thicken; then remove from heat and season with salt and cayenne pepper. Gradually whisk some of the hot mixture into the yolks to warm them, then return to the pan to finish combining.
In large bowl, beat egg whites with a pinch of salt until they form smooth, firm peaks. Stir ¼ of the whites and half the grated cheese into the milk-egg yolk mixture; then gently fold in the rest of the whites. Pour the souffle mixture onto the baking sheet, spread it to fill all the corners, and sprinkle the rest of the cheese over the surface. Bake until top is nicely browned and puffed, about 15 minutes. Remove souffle from the oven and let cool. Carefully turn it out onto a counter by turning over the pan. Set aside.
Cut stems off the spinach, wash, and cook spinach with a little salt in a large pan until it is wilted. Drain and squeeze water from the spinach, and chop fine. Melt the butter in the same skillet and slowly cook the onion until it is soft. Add the spinach to the onion and cook until the butter is absorbed. Thin the ricotta with enough cream or milk to make it soft and pliable; then season to taste with nutmeg, salt, and pepper.
Spread the ricotta over the souffle, then cover it with the spinach and cheddar cheese. Roll the souffle tightly, starting with the short end. Transfer to a lightly buttered sheet. Cover and refrigerate overnight.
In the morning: Preheat oven to 400 degrees F. Just before baking, brush surface with cream, then bake, until heated through, about 25 minutes.