Kaleo, if it was to be a gun that directly supplies health to a player, I agree, it would definitely have to have some "disadvantage" while trying to heal a moving player. Perhaps remove the ability to heal a moving player altogether, making the medic more like a medipad and less like an infinite medikit.
I do like player1 idea better. Perhaps I can suggest a modification? Instead of a limited amount of aid, how about a time limitation (on top of the application time he suggested), For instance, the player can have a max amount of "aid packets" at a time, say 3, when there player has used one or more, it takes a certain amount of time to regenerate it, say 15 seconds. This would prevent aid spam. For those who are confused, I will try to describe it being in use in-game. Imagine the medic healing a guy, this uses one aid packet leaving him with only two, after use, it begins to recharge, 15 seconds later (unless he heals another player, which would pause the recharge time) he will gain back one of his aid packets. Note: only one aid packets would recharge at a time.