Game developers and application developers are some of the biggest reasons for the current state of OpenGL actually. Devs wanted openGL to give them more freedom like DirectX or for things to be more closely aligned to openGL ES for compatibility reasons. Hell, if you look around a bit you'll find devs who want openGL to let them get even more low level than they can now for beter performance. All that fixed functionality came with a performance price and often forced the developers to play tricks to get the effects they wanted.
To your direct complaints,
Texture loading was always a pain and often neccesitated going to outside libraries(based upon data formats), but texturing has barely changed in the new opengl other than the use of shaders to do the look up.
The basic lighting equations and material properties that openGL used are easy to find and can be implemented in shaders in about 15 minutes(hell the orange books should have most of them already implemented).
Matix math libraries have been available for ages and if that is still too much effort, there are libraries like GLM which have almost line for line direct replacements for the openGL matrix commands.
OpenGL shaders should mostly be cross platform. The real problems they had probably had to do with various extensions or features not being supported across all hardware or the hardware having different limitations. OpenGL specifies the minimums to be standard compliant but hardware can have different maximums and algorithms can change based upon those maximums.
Yes there is now a bit more up front cost to using a the Core profile of openGL, but the flexibility and performance gains are honestly worth it.