Skipper Luke Murphy fired Alex in front in the ninth minute before Max Clayton doubled their advantage 12 minutes into the second half with his first goal in eight games.
A huge error from goalkeeper Alan Martin gifted Shrewsbury sub Asa Hall a goal. Martin then made amends by stopping another long-range drive from Hall with his feet before making an even better save to divert a Jon Taylor shot round his near post.
The pace and movement of Clayton, Mathias Pogba and Ajay Leitch-Smith troubled Shrewsbury throughout and Davis said: "I thought we controlled the first half with our football and caused them some problems with how we set up. I tried to do something different.
"I thought our front players were a constant menace and it took them a while to get to grips with what we were doing before they dropped somebody on to Chuks [Aneke] and matched us up.
"The three in midfield played a bit deeper and got the three in front of them running at them and causing some problems by interchanging positions so I was delighted with that."