The Android OS is very much like your computer. It isn't good to do hard resets on it (AKA battery pulls) because you are creating orphaned files every time you do it. Files that were in use by the OS, especially Temp files are left there in your device memory.
A better alternative is to do a power cycle (Off then On) to reset your device. The only time a battery pull is required on an Android device is if the device becomes totally unresponsive and can't be shut down normally.
A corrupted memory card can cause lagging and freezing like you describe. Take the memory card out to test, or put a spare card in, if you have one. If the lagging and freezing goes away, then you most likely have a corrupted file/filesystem on your card. Then you would need to backup your contents from your card to your computer, then reformat the card in the device. After the format, move only essential files and folders back to the card, then move files/folders back in small groups and test till all your files are back, or you find a bad file.
If the power cycle doesn't work, and it isn't your meory card, then I also suggest doing a Factory Data Reset as mentioned above.