in case it is helpful: it seems like the workaround you provided works with glyphs that contain outlines, but not with glyphs that only contain components (for example accents in my font)
f = CurrentFont()
f['aacute'].selected = True
f['a'].selected = True
the code above, run when all glyphs are shown, will select a but not aacute.