Hi,
a flash drive probably won't work, since they are too slow to boot windows from.
However, something I've been doing for quite some time is using an internal SATA SSD (256GB should be plenty), installing Windows on that, and then plugging it in via a USB adapter. However, before installing, you should unplug any other drives from the system, because Windows tends to put the ESP in random places when you have multiple drive connected.
However, you could also dual-boot Windows with your current OS. I would still recommend a secondary drive (like that 256GB Sata drive if you can).
Generally, OSes give the option to dual-boot on installation. I assume you switched to Linux? Generally Linux allows you to choose between wiping and dual-booting when there is a Windows installation already detected. Doing it the other way around is going to be a bit more complicated.
You'll need to install Windows without overwriting GRUB from Linux (I'm assuming you're using GRUB, and not systemd-boot/gummiboot or something else).
Once installed, you can run a command like "sudo update-grub" to update the bootloader entries in GRUB. If it detects windows, it should ask you which one to boot upon startup.
Sincerely,
LightJack