Well you don't have to shell out mega$$$ for a good graphics program, try Ulead Photoimpact. Applying gradients to an object is two,three click operation. There's probably a good chance its better than anything Adobe makes for web graphics <ducks and runs for cover>
Seriously though, many of the features are made with web graphics in mind. There is panels specifically for buttons, tiles, slicing... etc.
Applying a gradient to an object, as in to visual markup as a background?
Personally I don't have any problems with GIMP, I prefer it to Photoshop in fact since it's less clunky and I code everything myself so no need for WYSIWYG design ... but then again I am just well adapted to my working environment.
I think it's easier to adapt to your tools by putting the initial work in rather then find something adapted to you, but good luck in finding a solution.