The best way to fix images like this is by using layer a mask: a layer mask is a grayscale drawable that is attached to the image, and when turned on, black points on it imply in transparency on the layer, and lighter gray shades imply more opacity up to white which means full opacity.
The transparency provided with masks is in addition to the transparency provided by the alpha channel. You can paint on it with any tools, and even use selections and filters - if you erase more than you should all you have to do is to paint the over-erased area back with a clear color, or white, and you can "unerase" things in any order (not just undo the last brushstrokes as happen when one combiens painting with using Undo).
To enable the mask, right click on the layer on the layers dialog, and on te context menu, pick
Add Layer Mask.... Pick the
Full Opacity option.
Now, GIMP creates the mask, and makes it the active drawable - that is visible in the program by showing another thumbnail, just to the left of the Layer thumbnail on the Layer's dialog. The mask will be initially surrounded by a 1px white border, meaning it is the active drawable. If you click on the layer thumbnail or the mask thumbnail, you toggle the active drawable (there are options to make it active or not using the menus, but clicking is the most direct way).
With the mask as the active drawable, select the black color, a paint tool, and paint on your image: the areas convered on the Layer will become transparent (and you can spot the progress on the mask's thumbnail). If you overdoo yor transparency, just paint back with white.
Now, just pick a soft brush, the PaintBrush tool, and fix your image as you desire.
Remember to activate the layer (rather than the mask) prior to exporting your image - IIRC there were GIMP versions that would export just the mask in some situations.)
There is a lot to learn about masks, just check the manual: https://www.gimp.org/tutorials/Layer_Masks/