Hi Allistair,
Was this speed test done on a wireless client? If so, could be any number of issues such as distance from AP, interference etc.
Re DHCP-if I understand you correctly, you would want to run DHCP from the MX, you can then manage DHCP (reservations, exclusions fixed assignments etc) from the dashboard.
The MX may be NATing traffic also, so you would want to run DHCP from the MX for internal devices.