It seems a "rewarding" system would solve some problems here.
For example I want the r600g driver do OpenGL 4.2. So I can create a pool "OpenGL 4.2 for r600g" and pay my money to it, probably also search for existing pools and contribute to them. Then the money just sits there on some bank account and accumulate interest.
Then some developer comes along, thinks "I can do that" and somehow attaches his/her name to the pool so that people know who is working on it. And once OpenGL 4.2 works on r600g he gets the money. Maybe you could get part of the money for a part of the work.