In 2-3 days vs Within 2-3 days

I have always thought that within means "till some point" while in means "at some point".

In 2 weeks - i.e. in 14 days from now.

Within 2 weeks - i.e. during today or the next 14 days, not later.

within 100-200 days"?

I would say "from now and not later than in 100-200 days". But a native speaker told me that actually it means "from 101th to 200th day", i.e. not from now till the upper limit.

I would rather say "in 100-200 days" as I want to say "not sooner than in 100 days and not later than in 200 days".

My native speaker instinct agrees with your interpretation and not that of your friend. For me the difference between "within 100-200 days" and "within 200 days" is an expectation that the timeframe could be significantly shorter than 200 days but an acknowledgement that 100 days is a reasonable estimate of the likely timeframe. This phrase might be used to ask for something within 100 days but also add an upper bound of 200 days if something gets delayed. If a boss gave a project to someone and asked for it to be completed within 100-200 days I would be very surprised if the boss was annoyed at the project being completed in 70 days.

While it may literally mean 'from the start of day 100 to the end of day 199' that meaning is unclear and likely to be misinterpreted. A more plausible way to express that idea would be either to use "not sooner than 100 days but no later than 200" as you suggested or, more likely, to give specific dates (e.g. "between November 14th and February 22nd").

Your example is correct. In 100-200 days means that it will happen no sooner than 100 days from now and no later than 200 days. Within 100-200 days means it could happen any time between now and 200 days, but most likely fall between the 100th and 200th day.

Within

within (wɪˈðɪn) prep

1. in; inside; enclosed or encased by
2. before (a period of time) has elapsed: within a week.

To avoid confusion, you should probably provide a particular timescale or else outline specifically that it will be done after 100 days but before 200 days.

If you really wanted to say that something would happen after 100 days and before 200 days you should say it is happening between 100 and 200 days from now.

Saying within 100-200 days is (IMO) asking for someone to misinterpret your meaning, sooner or later. Different people will undoubtedly come to either of the same two conclusions you already mentioned.