It shouldn't be too difficult to calculate the IP checksum yourself, but I wonder if you could keep the identification field constant... For UDP it shouldn't be a problem.
You are right that the UDP checksum is optional, so you don't need to do it.
As for the other protocols, no they aren't handled. ICMP would only be needed if you want to get error feedback (such as UDP port closed) but it doesn't always work because lots of routers discard it. Now for ARP... if you are just sending, you don't really need ARP if you have a CPU with network access somewhere. Then it can get the destination MAC address for you and give it to your component so that it sends it in the ethernet header. If you also need to receive it's more difficult because you would also need to be able to answer ARP requests.
That's why it can be a good idea to share the TSE between your component and a Nios CPU with the SGDMAs. Let the CPU handle the other protocols such as ARP, and just use your hardware to generate the UDP packets.