I dont see why you couldnt read/write the sd card as your non volatile storage and have the user experience be no different than a microcontroller with on chip flash (and some flavor of on chip bootloader). It is a matter of talking to the sd card and adding files and writing and reading them, non-trivial but obviously doable.
toolchain: I like to think that I demonstrate that it is possible to write somewhat portable code that doesnt care what flavor or version of gcc you are using (or llvm/clang for that matter). Also I have a set of build scripts in another one of my repos (build_gcc) for building the latest binutils, gcc, llvm and clang for various targets. I bounce between the two codesourcery flavors, plus my own all the time. I found this one recently but have not tried it:
have used emdebian as well.
Another path you might consider, which I am more and more convincing myself that is the right path, is to get the user to buy two raspberry pis. One can natively compile and with the few changes I outlined somewhere in my repo, connect to the target raspi using serial with two or three wires. This gives you among other things 1) the users are using a known linux and not a mixture of windows and linux (mostly windows). 2) A native toolchain gcc instead of arm-whatever-gcc. 3) host computer serial interface that mates up with the target raspi loader. The price of a second raspi is between on par and double what one might pay compared to the device they are going to need to pay for in order to use the serial bootloader anyway.
There is no technical reason why you cannot do what you are trying to do, it is just a matter of manpower to get it done.
The one negative thing I will say is that it is not a trivial thing to obtain the arduino experience. It is more than polish and apis and web pages, there is something emotional there that pulls homebrew and hackers into it. You can see the mbed and the launchpad stuff from ti, luminary with the stellaris before they became ti. St has good platforms, code go with them but not the same traction, rabbit semi if anyone remembers them, microchip has been trying to get win this experience longer than even the avr folks, but for whatever reason folks flock to avr freaks and then later to the arduino. (I think microchip HAD that userbase, but they migrated or a new userbase formed that surpassed the pic lovers. Microchip completely failed (and still do to this day) to understand the affordable eval platform concept). If you could duplicate that user experience and as a result user base, there would be corporations lined up around the corner to beg, borrow, or steal it.
As delivered the raspi basically gives video, audio, usb/keyboard/networking for a fraction of the price (and significantly higher horsepower, although higher actual power consumption as well) as the arduino equivalents. The raspi suffers on the gpio side, and it is hard to touch the overall atmel documentation and ability to find the documentation experience, the raspi vendor docs are almost as bad as it gets. I have said this before, I would love to see the user base take over the documentation and at least have it in one place and consistent rather than bouncing around between the vendor doc, the web based errata, and user examples that explain "what they really meant was".
If nothing else the bootloader you are proposing will be popular with the folks already able and willing to do bare metal.