In a large pot, heat the vegan butter or olive oil over medium-high. Sprinkle in red pepper flakes if using, and allow to bloom for a minute.
Add in onion and sauté until translucent, about 2-3 minutes. Add in garlic and sauté for another minute.
Add in cubed potatoes, vegetable broth, and bay leaf. Bring to a boil, then reduce heat to low or medium-low to bring to a simmer. Simmer for 10-12 minutes, or until potato is easily pierced with a fork.
Using a slotted spoon or skimmer, scoop about half of the cooked potatoes out of the soup and into a high-powered blender. (Some of the onions will wind up in there too; that's okay.)
Before blending the potatoes, add broccoli and carrots into the soup, along with spices (onion powder, garlic powder, smoked paprika) and nutritional yeast. Bring the mixture back up to a simmer. Let it simmer over low/medium-low for about 5 minutes while you blend the potatoes.
Add soaked cashews into the blender with the potatoes, along with 1/2 cup water, and blend until completely smooth. Add extra water as needed to get everything to blend smoothly into a thick creamy consistency. (The exact amount you need will depend on how starchy your potato is. Russets will take a little more water than gold potatoes.)
Stir the creamed cashew and potato mixture back into the main pot of soup. Add in the fresh lemon juice. Cook for an additional 3-5 minutes, until warmed through and slightly thickened.
Taste and add salt and pepper to preference. The exact amount of salt will very depending on the brand of veggie broth you use.
Serve with crusty bread, or in a bread bowl if you're feeling fancy! Optionally, top with vegan cheddar-style shreds, scallions, and/or hot sauce.