Also the souls don't seem to carry over to the next run if you give up
That is the intended way. You lose all the souls you don't use when you start a new run. So you can't just pile on quick one level runs and build up you souls to buy something expensive.