"The government should end all subsidies, including allowing industries to pass external costs to others"
That would be a step in the right direction, but I don't think it is enough.
In addition to all the other factors stated in posts above, we have to consider the massive infrastructure in place to support the status quo.
Without subsidizing alternative energy, it might end up taking 50-100 years to completely replace all the infrastructure that currently supports coal and oil.
If I were to try to compete with series of coal-->electricity plants by building up a series of say, wind farms, I'd face pretty large obstacles that coal does not face.
Where to store the energy for later use or low wind times?
Not being able to build near existing lines if there isn't wind there.
Power grid not designed to handle spikes in power,
etc etc etc
Likewise if I wanted to start an electric car line. No 'recharge stations', no bulk battery makers, battery technology research needs to be furthered, etc..
Subsidize should be used to encourage industry to move in the direction the benefits the public. Unfortunately, they don't seem to be used in that fashion very consistently.