Most of those are not good sources of protein, you'd have to eat like 15 cups of broccoli to get even 30-40 grams of protein. Having a lot of protein per calorie doesn't mean much if the food is almost 0 calories. Vegan bodybuilders are able to exist by consuming tubs of vegan protein powder lol.
Brocolli heads, the stalks which most of us throw out now a days or use to flavor soup, are much heavier in protein. Not to mention that the "Historical average" for Vikings was roughly 5'8 and 170lbs. That is not remotely "small" in comparison. In fact this was considered "Huge". To put into context, Connor McGregor stands at 5'9 and 130-145 lbs depending on the time of his career. Are you really going to say he doesn't look ripped like Arnold?
The "towering" Danes and norsemen were this size. If 5'7 175lbs is "huge" compared to the average Englishmen who stood at 5'5 and 140lbs you can see the co-relation in size.
People seem to forget now a days that humans are quite tall and gangly. We are giants of our former selves.
There is also the misconception that people raided because of lack of food. When it's actually the opposite.
Farming techniques increased, and thus the population boomed as a result of EXCESS food. As a result of the population boom, more and more people sought to find "other lands" to raid or take over. Instead of living meagerly. They sought glory and a better life, rather than just the life of a farmer.
If you genuinely think that "Modern training" is some how superior fitness to that of medieval, I beg you go put on 40lbs of armor, and actually try to train or fight, for more than 20 minutes at a time. It's a work out. Then add in the daily chores, such as tending horses, riding, hunting and everything in between from hauling equipment to firewood.