First of all!!!!
a 20g is perfectly fine for an adult bp. a 45g is actually taller and doesn't have much more floor space than a 20g. Since ball pythons are terrestrial, you would be wasting all that height by having to heat and cool it. Also, strangely enough, ball pythons get stressed by large spaces.
There is nothing wrong with using screen tops, just make sure it is secured with cage clips so the snake can't escape.
Get two of the rock cave hides. They should be very tight fitting, the snake should barely fit in it.
85* is actually the lowest of the temp gradient and is a perfect ambient temperature. You will need a hotspot of 92-94* though. This is best achieved with a UTH on a thermostat rather then a lamp. Lamps tend to suck the humidity dry witch will cause the snake to have a bad shed.