Sharp edge support loops for cylinder
The best topology I've personally found for this kind of case (hole in a round surface) is the following one. So you need to create a bevel on the corner, then join some vertices and delete some edges: