As the above poster mentioned, fragrances and other substances from the contents bottle have likely been scalped by the plastic. The only thing you can do is try to reverse the process. If it's really important, I would fill the bottle with a suitable matrix - probably something nonpolar like vegetable or mineral oil - and let it sit in a warmish place for a few days or up to a week. Some of the whatever partitioned into the plastic should partition back into the oil. You can repeat this with vinegar, vodka (or other neutral spirit) and water (separately) to cover all your bases. You may never get totally rid of the scent if the bottle was four years old but this procedure will likely help to some degree.
(Without knowing what was scalped, it's hard to guess the best matrix to use. But most likely the bottle is polyethylene or something which means the migrant is probably something reasonably nonpolar, which is why I suggest either an oil or high % ethanol as a matrix.)
It does, as Arkcon mentions, beg the question of why you're using a sunscreen bottle to store something you're consuming orally. Sure you can find other containers for your food...