peaboard:
I'm not familiar with dynamic memory allocation on Arduino, is this method okay?
Could it lead to any problems over long term use?
I don't know how to do it because dynamic memory allocation is a risky business when you have only 2K of SRAM and no supervisory operating system to stop silly things from happening.
Why not just allocate an array that is big enough for your needs and under-use it some of the time?
As there can only be one program running on an Arduino there is nothing that can make use of the memory that might be released.
...R