Usually this is a problem for 12V LED lines with 3V3 microcontroller like the ESP32.
I wonder why it wouldn’t work if you connect +12V on the first led?
With the WS2812B you're issue is that they operate on 5v logic for communications. 3v logic from a chip can _just about_ communicate with 5v devices. But you can't send the signal very far before the voltage drop stops communication. The cheat here is to use a single WS2812B LED as logic voltage converter. You put a resistor in line so it's operating at ~4v, give it a 3v logic signal it can understand, and it'll then talk down stream using ~4v logic, which you can then pump into normal 5v LEDs.
You can find detail of this little trick on hackaday[1]. But it's specific to WS2812B type LEDs that are really microcontrollers that happen to also put out light, rather than traditional dumb LEDs that have no smarts.
[1] https://hackaday.com/2017/01/20/cheating-at-5v-ws2812-contro...
Each LED reforms the signal before sending it to the next LED in the chain, so voltage dropping over distance shouldn't a huge issue for the logic line unless the strip is very far away from the controller.
And the datasheet almost agrees with my experience; the "high" voltage threshold is listed as 0.7×VDD, and 0.7×5=3.5V. That's a bit over 3.3V, but I haven't had any issues across several projects. Maybe it's because many USB supplies provide a little over 5V to account for droop? Maybe the datasheet is slightly pessimistic? Maybe 0.7 really means 2/3? Whatever the reason, it simplifies the wiring for small displays.
Here's my favorite reference for the single-wire protocol that these LEDs use, since everyone seems to be chiming in with one:
https://wp.josh.com/2014/05/13/ws2812-neopixels-are-not-so-f...
In my experience, slow microprocessors are WAY more tricky to deal with than a 3V3 logic voltage for these strips; and often lead to crazy hacks. I'd way rather just put a modestly powerful resistor or a buck converter in my project than deal with trashy old Atmel chips, given how absurdly cheap ESP32 and ARM M7 packages are.
#1: AdaFruit loves you and has a guide: https://learn.adafruit.com/adafruit-neopixel-uberguide
#2: Andreas Speiss has a phenomenal youtube channel that offers a lot of solid tips and tricks for new makers looking to avoid common pitfalls: https://www.youtube.com/watch?v=IIl5nDjfkjY
#3: GreatScott! (another great youtuber) has a really fun article on what I'd label a very "intermediate" LED project to get a sense of how to put everything together to make a unique object that is not simply a matrix and a lot of software: https://www.youtube.com/watch?v=tXfMg8y1Fs4
Good luck, and one last tip: remember to be careful that your microcontroller may be fried by the voltage your LED strips needs. It may seem that there is an obvious solution to that which is, "Just use 2 power supplies" but with 3-wire LED strips group loops can exist and ruin your ability to control the strip. Don't despair, search for "buck converter board" and then look up how to tune it. You'll get a system efficient enough that you can drop 12v to 3.3v and it won't drain your battery or overhead your enclosure. Linear regulators are not your friend, they're usually cheaper specialist tools for folks who care about radios.