Heat a large saucepan over medium heat. Add the butter. When melted, add the mushrooms, onion and garlic, and cook until soft. Season with salt and pepper. Stir in the flour and cook until browned and bubbly. Slowly whisk in the milk. Bring to a boil, stirring constantly. Stir for one minute and turn off heat. Add half cup of cheese, and stir until melted.
Add the uncooked rice to the slow cooker, followed by the broccoli and cheese sauce. Add 2 cups water and stir. Cover and cook over low heat for 6 hours until liquid is absorbed and rice is tender. Remove lid and sprinkle remaining cheddar on top, followed by the Parmesan. Cover and cook for 1 more hour before serving. Sprinkle with walnuts pieces, if desired.