Are you using the manual 12MB test size for download tests and the manual 2MB size for upload tests (normally it's 2MB, though Chris asked for 3MB)? Also, you should be using a single device connected directly to the modem with a LAN cable, NO ROUTER, when running the tests.
It would be best for you to create an account at testmy.net and run the tests while signed into that account. This will keep all of the results in a centralized area that can easily be looked at and which can show patterns. When you've run some tests, you can post your results URL by clicking on "Results" on the upper right and then copy/paste the URL in the address bar. It will look like the following, but with YOUR user name where it says "yourusername".
I understand your frustration. The reason they request a single device to be directly connected to the modem is not only to eliminate other things that could be connecting to the router and drawing data, but also because routers themselves can sometimes cause problems. It can be a nuisance, for sure, but it's the first step in helping to pinpoint the source of the slow speeds.
Do you have someone that might be able to temporarily move your computer so it is next to the modem so that you could use one of the LAN cables you already have there to run the tests?
A direct connection is always needed to run speed tests to rule out if the router is the cause of the problem.