This is very difficult but many many years ago I had a very small business. I started a new girl on a Monday and on the Thursday she asked for time off to attend an interview for another job. I decided immediately to 'let her go'. I knew she would never stay anyway. In your hypothetical situation I think if it was me and I hadnt actually started the first job, I would go for the other interview and take the job if more suitable; telling the first employer 'due to unforseen circs etc'. However if I had already started the first job then I think i would stay there and give it a chance.
If you haven't had an interview for the 'better job' then you would be mad to turn down the first offer, IMO.
I would accept the first, go for the second and stall my start date till I had heard one way or the other.
In a previous job we used to get loads of people who dropped out a couple of days before their start date cos they had a better offer. (In fact used to have a few who never come back from lunch on their first day!!)