Also, it might be that your laptop is infected with some malware, and that firewall in router is dropping connections to/from your laptop, thus preserving all available bandwidth for your test and you get better peeds.
And when you connect your laptop directly to the modem, it is unprotected and additional malware connections are made to/from it which uses up most of the bandwidth, leaving only a little for your test.