I think that I've got an 18 crank up at the circuit, and I've got a couple of 28 cranks right here with me, so I can't check right away, but can do later probably.
Not sure about swapping bearings as the 21/28 crank is designed with a step on the inside where you can't see, which is where the seal, errr, seals. I don't think that the 18 has this step, so you may have to make up a sweat fitted collar to act in the same way as it would if fitted to the 21/28 crank. This collar would also act as a distance spacer for pressing the crank back together so would need to be pretty accurate.
A job for Brother Stephen when he returns from paradise.