For me, the ultimate solution is one of education. If we want to avoid the idea of abortion altogether (except, maybe, in the case of rape or other events beyond one's control) then we should begin to educate people, from a young age, away from this idea that we should have children in the first place.
Most people have no real reason to have children. It's not an evolutionary drive, it's programmed society: 'grow up, get a job, house, dog, have kids...' People do it because it seems to be the normal, done thing to do. But really, what valid reason is there? There isn't one, beyond ego. So to solve all of these problems, a society should be educated away from the idea that having kids is the 'done' thing.