To get a concrete reason you'd need to talk to the people who designed the feature.
However, as general background, understand that there are actually three different ways that annotations can be handled, per the RetentionPolicy meta-annotation (and yes, I picked the 1.5 JavaDoc intentionally):
SOURCE
means that the annotation exists only in the source code, and is not written into the classfile at all. It's intended for annotations that change the behavior of the compiler, but shouldn't matter at all to the running program.
RUNTIME
means that the annotation is written into the classfile in a way that is visible to the program via reflection. As noted in the comments, you can't reflect on a local variable.
CLASS
means that the annotation is written into the classfile in a way that is not visible to the program. They can, however, be read by bytecode analyzers or classloaders.
Annotations appear in the classfile as an attribute of a class, method, or field. The idea of a table of attributes attached to these entities has been around since the class file format was defined, so adding annotations to them was easy. The LocalVariableType, however, doesn't have per-variable attributes.
So, I speculate that the architects of the JVM decided that the benefit of load-time-only local variable annotations was not worth the changes to the data structures used to manage the local variable table.