In a large skillet or dutch oven, melt butter over medium low heat..
Add onions and cook, stirring every 3-5 minutes, until onions are caramelized. This will take in the range of 45-60 minutes. Watch the heat, because you don't want the onions to burn. Adjust heat as necessary, aiming for a slow steady heat. This will allow you to multi-task rather than babysit the stove.
Once onions are caramelized, pour the vegetable stock into a leak proof jar and add flour. Shake until all flour clumps have broken up.
Pour stock mixture into the pan with the onions and cook until the gravy thickens.
Add heavy cream then season to taste with salt and pepper.
Notes
Onions take a LONG time to caramelize! Good news is you can caramlize the onions in advance and freeze them (up to a month) or refrigerate them (for a few days). Right before serving dinner, reheat the onions and pick up the recipe at step three.
The color of this gravy will vary due to the vegetable stock used. Some vegetarian stocks contain a large amount of carrots, making the broth orange. Thus the gravy will be a yellowish-orange. Still delicious, but I preferred my homemade vegetable stock that had more herbs and less carrots. Purely aesthetic, but something to consider.
2.5 pounds of onions will be about 2-3 large sweet onions.