Try inserting the size before labeling:
fig1 = Labeled[Show[a, ImageSize -> 500], "(a)", Bottom]
In general I have learned to avoid GraphicsRow
, because it is so hard to get the size the way I want. Try Grid
instead.
I would use PlotLabel
when generating the a
, instead of adding it later with Labeled
.