I'm manually uploading a plugin that I created, but no changes take effect and the file editor shows no changes unless I change the filenames within the plugin. I've already tried doing this while disabling W3 Total Cache (the only caching plugin I can find that's running). Can someone explain this behavior?
It is hard to advise on issues like that, since they are specific to your installation.
In a very general sense one of two categories of issues can cause it:
You are not doing what you think you are doing. An example would be placing files into wrong server/folder.
Your server is not doing what you think it is doing. An example would be PHP code loaded from (aggressively configured) opcode cache, instead of file system.
The thing with filenames makes me suspect latter case. You could try restarting server (just software of computer altogether) to see if its caches make a difference.