- How can I calculate which resistor and which transistor (using the direct connection or Darlington connection) should I use for an unaddressable LED strip of given length?
Provide a link to the datasheet of the strip you're planning to use!
A transistor is probably not the best choice here, a MOSFET might be the better match.
- How many LEDs can 1 Arduino (specifically an ESP8266) control before we see some kind of lag?
The bigger problem usually is the 5V power supply. You cannot have 2000 pixels in row, after 100-200 of them you won't have enough power to light the LEDs. You have to make multiple strips because of the power anyway so you can have one pin per strip to control it. The speed on the data line depends on the strips used (once again, why don't you provide links to the datasheet?) but even the faster versions cannot have more than about 400 Pixels to get an update rate of 50Hz. As you didn't provide information about what you think is a lag, we cannot go into more detail.