The medium answer is that no, there is not a simple way to set the vertical alignment within a row on a block while using the geras renderer. You would need to create a custom renderer.
The long answer with more details:
First, Blockly Games isn't doing anything special. In your screenshot, it only looks like it's center aligned because that particular block has an inline input block. Compare to the "rest" block:
where you can see the text is not centered.
There is actually a lot to think about here when you ask about centering the text. What should be centered? Should all of the external, inline, and statement inputs be centered? If so you need to handle each of those cases. So Beka's blog post you linked is a great place to read about this if you did want to create a custom renderer.
If we dig into the rendering code, we can compare the
geras getElemCenterline method against the
thrasos one. In thrasos, for the default field case (where the element is a field, and the row doesn't have any spacers or inline inputs or statement inputs or anything) we use row.height/2 for the centerline, while in geras we use elem.height/2 for the centerline, where elem in this case is the text itself. So that leads to the text being centered in thrasos and not in geras. So one option if you don't want to use the thrasos renderer would be to create a new renderer based off geras that changes this `getElemCenterline` method to look more like the thrasos version, but you would definitely want to do some testing to make sure that looks good in every case, and again Beka's blog post is probably a great place to check for cases you'd need to cover.
This is a complicated topic as you can see, but I hope this information makes sense and helps you out.
Maribeth