My first couple brews finished at 1.020. I added some fermentation control, and try to keep the temp between 66 and 68. I aerate more than I think I need to (WAY more than my first batches) and started using Nottingham exclusively. Since I made these changes I have been getting much better attenuation (my pale ale went down to 1.010)
It's hard to accept, but your beer is probably not going to move from 1.020. Chalk it up to a learning experience, and try to make some improvements to your process down the road. No harm in trying the warmup/swirl method and waiting a week, but this hasn't worked for me the 2 times I've tried it.