Although 0.5 megabits per second is easily sufficient for three voice calls, it is easily saturated by other kinds of uploads, e.g. filesharing, emailing attachments, uploading to a backup service, etc. It's also possible that unwanted traffic is the culprit, e.g. malware , neighbors leeching off unsecured Wi-Fi, etc.
Try to determine whether your quality issue is related to other upstream traffic. For example, when on a bad call, turn off Wi-Fi on your router and unplug the Ethernet cable for any computers. If the call clears up, you will know that's the cause. If not, there could be an intermittent problem with your cable modem or drop.
If the problem is caused by other traffic, you will need to get QoS. Check whether your router can run Tomato (preferred) or DD-WRT. Or, try to find an inexpensive replacement with the feature.