I don't mean to sound rude, but you don't actually pay for 250 Mbps. You pay for whatever performance level the network and all other factors can provide you, up to a theoretical maximum of 250 Mbps. There are literally dozens of factors that can influence your speed, and Comcast is only responsible for some of them. They have no control over the hardware and software you choose to run, the configuration of your devices or modems (noting you have your own), and certainly not the distance from your computer to a particular website or server you're accessing and the network routing path that gets you there. More than any other fact, wireless connectivity is enormously hindered by signal congestion. You have your own home network, but the more other homes in your neighborhood that ALSO have wireless networks, the bigger a problem you're going to have. They may be separate networks, but their signals all share the same airspace. I have 1Gbps connectivity from my home, and on a good day by wireless I will get 450 - 550 Mbps, sometimes 650. To put in perspective why WIRELESS signal congestion is the problem, I get about 940 on my desktop that connects directly via a networking cable and does not use wireless at all.
There really are countless variables, which is why Comcast (and every other provider I've seen) do not provide a service level agreement that guarantees the particular speed one "pays for".
I know that's not a helpful answer that you're looking for -- and I don't mean it be snarky. But it's a super important context to understand when you're trying to diagnose a performance problem. Put another way, you'll rarely if ever reach the theoretical 250Mbps max no matter what configuration you have as long as you're using wireless. If you use a direct cat5 or better connection to the modem and still don't come anywhere close to your service level, I'd say you likely do have a bigger problem Comcast needs to fix.
I used Comcast's 250 service for several years before switching out to 1 Gbps last November. I probably averaged at best 70-80 Mbps throughout my time on 250 as long as I was using wireless, but generally got around 200 to even higher than 250 when not using wireless. So I'd agree with you that 20 or 30 seems really low, even for a congested area.
Do you have a cat5 or cat6 cable you can run from your computer straight into the cable modem itself? It'd be a useful test to try and isolate the problem.