Despite the title, I'm not advocating constant practice on Halo; the game should be fun and not a time consuming chore. What I am suggesting, however, is that you create custom gametypes with the intention of practicing certain styles of play.
Want practice with the battle rifle getting headshots? Get some friends together locally or on Live, and create a gametype with overshields and ONLY battle rifles. You'll have to master the art of pouring on the pain and headshots, not letting up until your opponent is dead. Good practice for a full-on game, either Live or Campaign, when you may actually find yourself in that predicament... up against Elites with only your battle rifle left.
Set up a game with ONLY sniper rifles and beam rifles. In no time you'll be fighting close range with them, and in a real game, you won't be mincemeat when all you have left is a sniper rifle and your enemies are close up.
Playing Halo CE recently, I found myself stuck with only a plasma pistol and a nearly spent Assault Rifle, up against the Flood. I thought I was finished, but on a lark, figured I'd try out the plasma pistol instead of wasting my assault rifle ammo. To my surprise, the Flood were quite easy to take out with the puny little plasma hose, and I've since practiced with a friend just fighting with the plasma pistol (not even overcharging, just firing).
Another fun game type is meelee only, where you have a gentlemen's (and ladies') agreement not to fire, but only use whatever weapons you have at hand to bash each other with. You'll quickly become adept at charging in, dodging their blows, and being able to slip in behind them for a good blow to the back of the head. Having no ammo left doesn't have to be a death sentence.
Want some practice tagging with the plasma grenade? Well, again, an agreement amongst players that no shots will be fired, and all you'll do is try to nail each other with grenades, either from a distance or up close. It's a heck of a lot of fun, and the bragging rights alone are worth it... ('Hey, remember when I tagged you in the face with a plasma grenade across Midship?'). Again, not just fun, but good practice for a real game.
The point is, make it fun to practice the game with situations that aren't optimal, and you'll be far more ready to handle them in a real game, and suprise your opponents, who may just not suspect at all that the poor Spartan they're meleeing with can actually take them out up close with the sniper rifle.