found something interesting, you actually need to repoint 0x674 (1652) bytes at x309AAC, this seems to account for the egg animation. (what are the following 0x6C (108) bytes after that though? they seem to be animation pointers but don't actually seem to effect anything ~_~)
so at the end of the table is this
C4 99 30 08 doesn't seem to be used for any other pokemon, however it seems to be used with all the expanded mon, so changing it to swalots animation would make all expanded mon use swalots animation regardless. (which fixes my problem but only by fluke)
CC 99 30 08 seems to be used for the egg animation (although changing it to a different animation pointer doesn't seem to change anything, but making it a random pointer resets the game when viewing the eggs summary screen)
Does that mean there's some sort of limiter somewhere that needs to be altered so that the expanded mon can all have different pointers?