I've spent a long time in Lejeune (12 of the last 17 years) and have owned two homes in Sneads Ferry as well as in Jacksonville itself as well as own two businesses. I turned two primary residences into rentals and completed a Buy-Rehab-Rent-Refi project. This is a good area for rental properties. While the hurricanes are dangerous a side effect from Florence last year was decreasing the supply in housing overall leading to an increase in the rental potential in most areas of SE NC. Lord willing my interests in the area are spared this year as they were last year.
Before answering the SF vs Swansboro question, I need to point out- as has been stated elsewhere- that the criteria to purchase a primary residence is often different than the criteria to purchase an income property. Not that those CAN'T be congruent, but they often are not. If you are truly projecting to move in 2-4 years and rent it out, then you need to run the rental numbers and purchase on that criteria and not on how much house can you get for the smallest monthly payment (often the criteria for a primary residence).
As for SF vs Sneads Ferry that depends...both are quaint fishing villages. Swansboro itself is an actual municipality whereas SF is an unincorporated area of the county. Both have had significant growth in the last decade. Schools are better in Swansboro overall. You're closer to the beach in SF. Traffic is better in SF (though getting worse), has easier base access, and you're closer to Wilmington (if that is a draw). Swansboro has more "stuff" going on (an actual "downtown", more restaurants, shopping) but is more expensive overall. SF has some good neighborhoods but overall the area is quite poor. As for living on the water, for SF you're basically asking to live on the intracoastal. In Swansboro water means the White Oak River. Flooding is a bigger problem in Swansboro than SF.
End of the day, you need to look in both areas, find a neighborhood that works, and find a home that meets your criteria.
Hope that helps.