Maybe I'm not seeing the whole picture, but can't you just the apply the border (by setting those values to 0 / water) after normalizing?
And I suppose you're normalizing correctly e.g: [0,1] = ([-1,1] + 1) * 0.5
Some aditional ideas... last time I generated something like this, I used probabilities and a random number generator.
I simply choose the center of my island, and a maximum radius. Then for each pixel, there was a probability of it being land or water based on its distance from the center and the maximum radius. At the end I also applied a few post processing passes, to detect oceans and remove inner lakes, etc.
Maybe you could keep your current simplex noise approach, but afterwards do a similar post-process on your map in order to make it more "continent-like".
This could consist of going through every pixel, and depending on a random probability convert some of them back to water (by setting the value to 0) e.g. 100% chance of water at the border and decrease to 0% about 20 pixels in). This way it would still look kinda organic.
You could then apply a second pass to remove small islands or something, if you wanted.
Just for reference, using probabilities generates shapes such as this (of course this is in a much lower resolution that yours because it's tile based, not pixel based):
Edit
Even if you don't want to use probabilities (which are just there to give a little extra bit of variation) you'll still need to work with a radius and combine it with your perlin noise in order to get something that looks like an island.
The very least you need to do is take your perlin noise, and apply a radial filter to it so that pixels closer to the border become water. Using a radius will be better for sure than your idea of doing for instance "x < 5 becomes water".
And another thing you could do is ignore the height values in your perlin noise for now. Set a thresold and let the result decide only where there's land and where there's water, nothing else.
You can add mountains as a second pass (e.g by measuring the distance from the coast on each pixel). Then add some lakes, rivers, different biomes in separate passes. Your perlin noise doesn't need to provide all the information at once.
I just found an old link I used before when I worked with this:
http://www-cs-students.stanford.edu/~amitp/game-programming/polygon-map-generation/
I'm sure you'll enjoy it.