The new IP address is issued because the (broken) client sends a DHCPDISCOVER message, which the server obliges by pinging the old (and still in use on the client) IP address, and getting a response. This causes the server to believe that address is in use - which is correct, because the client is using it; the broken DHCP client's error makes it think otherwise.
On the server, this can be avoided by disabling the ping before responding to the DHCPDISCOVER message. This is not a good idea! The ping will stop any accidental duplication of IP addresses, and is a good thing. However, you may not have a choice if you don't fix the client. The ping is stopped by adding the line
ping-check false;
to the subnet section of the configuration file /etc/dhcpd.conf for the wireless link (and restarting the server, obviously).
Client Configuration
Server Configuration II