Preheat oven to 350°F.
In a large skillet, heat butter over medium heat until hot and melted.
Add onion. Sauté over medium high to high heat, stirring, until soft.
Stir in flour. Cook a minute.
Gradually whisk in half and half, chicken broth and cream cheese. Cook, whisking, over medium heat until sauce boils and is smooth. Cook a minute or two until thickened.
Stir in 1/2 cup Parmesan cheese, well drained spinach and salt and pepper to taste. Heat to boiling.
Turn spinach mixture into a shallow 1 quart casserole dish.
Top with remaining 1/2 cup Parmesan cheese.
Place in preheated oven and bake for 12 - 15 minutes, until bubbly.
Remove and serve hot topped with shaved Parmesan cheese.