Garmin DataCard is a really simple device. Just standard flash chip on a small printed board. You can buy a low capacity one and replace chips. Or you can find singe-side card and add second chip. I'm not sure how to format datacard, maybe you can do it in Garmin USB card reader?

I think that it could be possible to create passive adapter for XD cards, they seems to be designed like DataCard and have smaller size.