Sadly, I don't think there's any possible way to speed up Pokemon Diamond's battle system, as that could be down to how the ROM behaves normally, and not on a specific flashcart. The only things I would suggest would be:

- Trying out the Japanese ROM instead of the English ROM, because I know the (J) version runs faster (in terms of text AND the in-game battles). Just rename the save file you use to the same as the Japanese ROM's name and it should work.
- Using a different form of media? For example, a 1GB Micro SD might be able to run it a bit faster than one with a higher memory capacity, or a specific Micro SD brand might be an optimum choice to use (e.g. Kingston Japan), but I doubt that the media being used to run the game is the problem.