Not enough jobs. People do settle in smaller cities if there are jobs - the city of Ulsan has higher GDP per capita than Seoul, thanks to Hyundai Motors and other big plants, but it's not exactly easy to get one of these jobs.
In the end, most people flock to the greater Seoul area because that's where most jobs are.