Bayleef, Quilava, and Croconaw can be snagged from trainers in Colosseum. I believe if you wait to snag them until the postgame, you can transfer any Poke Ball that existed in Gen III and use that to capture them. Shadow Pokemon will never appear Shiny when you're battling, but they still have a ~1/8192 chance of being Shiny when you capture them. This doesn't work in XD. You can then transfer these Pokemon back to the GBA games and up to Gen IV.
Also, because the personality values of Shadow Pokemon are calculated the first time you encounter them, you can't soft reset for them in the postgame—it'd be all or nothing. I'm not super familiar with Colosseum, but I think you can at least buy Great Balls before you fight these guys the first time around, which still fits your criteria. Also worth noting is that you only battle one of Bayleef/Quilava/Croconaw initially and the others are encounterable in the postgame.
Given you'd have to beat the entirety of Colosseum, you wouldn't know if you found the Shiny until you captured it, and it requires so much extra hardware, it would royally suck to actually do this. But theoretically you could!