Content Aware is all about the initial selection. Try experimenting with keeping your selection depth further from the scenery. Also, you can use the Clone tool (I recommend doing it on a separate layer, and be sure to choose Sample All Layers in the option bar). If you choose your samples well, it can cover the duplicate pixels.
Matching left and right is straightforward.
1. Take you layer and make a selection round the top
2. Use content aware fill to fill the selection
3. Duplicate the layer and move the bottom layer to the left and the top to the right
So you can see the join
4. Add a new layer and use the healing brush to heal the join onto the new layer
5. Duplicate the healed layer
6. Select the copy image layer and the heal copy and move them to the left so that the image layer is back in it's original position (it will snap and the pink guidelines will appear when back)
7. Select the bottom image layer and the heal and move them to the right so that the image is back in its original position
8. You can now delete the image layer copy and your are left with the two healing layers positioned correctly to cover the join.
9 If required - flatten the image
The trick with CAF is to only give it the pixels you want it use in the fill, so select the sky and copy to a new layer.
Then make your selection and CAF it.
However that still gives rather patchy fix IMO, so select the dark blue, and do a foreground to transparent radial gradient from the middle on a new layer, and flatten it vertically with Free Transform