For the level script on the black map, use 02 rather than 04 or 03: trust me, since I don't believe warping works with anything other than 02 (I could be wrong...) but either way, it wouldn't matter when it happens since the whole map would be black and the "pause" is so short nobody will realize. (Since you need to warp to change your OW anyway).
Now, as for the "gliding" thing, that's because you would have to repoint the frames for those OWs. Which is a pain in the butt, and since you're using JPANs engine, you can easily create a new OW table and add as many frames for each OW as you want (nine is the standard).
The gliding occurs because the frame for the walking is pointed to the same frame as the standing. It's really dumb why they did that, I'm guessing to save space, but it was really unnecessary. If you really wanted to change the exisiting sprites, then this is what you would do. Open up your hex editor, and goto address 3A3BB0. Multiply the number of the sprite you want to add more frames to by 36. Then use Select Block and select that number. Since the table starts at 0, the data of the OW you want will be right under the last highlighted byte. So once you're there (It'll start with FF FF and then have the palette number of that OW to be sure you're correct), count out 28 bytes. That'll show you the pointer for the frame data. Go to that and change the ones that are the same to different locations. Then insert the picture you want to insert after they're all repointed.
As for the trainer customization thing though, the way I just told you with the black map works perfect, since I just did it for what I'm working on right now. :]
Sorry this was so long.