On the top layer, add a layer mask (Layer > Mask > Add layer mask, and initialize to white).
Create a black to white gradient on the mask (black is the transparent side). When doing so, if you click near the middle of the line, you get a cursor that allows you to tune how the gradient changes, and therefore how the top layer fades.
What you can do is to use Layer Mask. Add the mask to edited layer, (eventually fill it with black ) then apply some gradient to the mask. When play with mask use black, white (and gray). This make the layer with mask transparent (black) or nontransparent (white).
P.S. Those things are for Photoshop, but I suppose in GIMP will be similar.