I'm sorry but that's not the way DHCP Relay Agent really works.
The DHCP client broadcasts a request for an IP address and additional configuration parameters on its local LAN.
The Switch, acting as a DHCP relay agent, picks up the broadcast and generates a new DHCP message to send out on another interface. As part of this DHCP message, the relay agent inserts the IP address of the interface containing the ip helper-address command into the gateway IP address (giaddr) field of the DHCP packet.
This IP address enables the DHCP server to determine which subnet should receive the offer and identify the appropriate IP address range to offer.
The MAC Address from the DHCP Client is never modified.
Can you post 'debug' information from the switch on DHCP packets ?