En primer lugar revisa que en la barra de opciones de la herramienta de selección que utilices (arriba), tengas puesto "0" pixeles en la casilla de desvanecer.
En segundo lugar puedes hacer el degradado algo más grande que el objeto al que quieres aplicárselo en una capa nueva, y después en el panel capas, pasas el cursor con la tecla Alt pulsada entre las dos capas, cuando veas que el cursor cambia, haces clic. De esta forma el degradado de la capa superior solo afecta a la zona que ocupa la capa inferior.
Que mal me explico, se ha entendido algo??