Changes to weapon txt files (and VMT files?) require a restart
Changes to the VTFs can be reloaded with "mat_reloadmaterial thumbnails", though it only updates the image, not the VTF flags attached to the image (it will keep the ones from the VTF you had loaded before). Updating VTF flags requires a restart afaik
edit: after some experimentation I've come to the conclusion it should also update VTF flags
Requires sv_cheats 1. if you're playing TF2 and you're like "oh wow this one SUCKS I want to change it" just go in an offline server (or stay on the main menu), sv_cheats 1, replace the VTF with the one you want by removing the current one and renaming another, "mat_reloadmaterial thumbnails"
(example: crosshair1.vtf sucks. rename crosshair1 to crosshair1_old, rename CoolNewCrosshair.vtf to crosshair1.vtf, mat_reloadmaterial thumbnails)