To be honest, this seems to be less of a linked list, and more like, some code that manipulate a bunch of nodes that happen to be linked together.
Maybe it would be a good idea to implement the linked list first. Have instances of your linked list class maintain the head, tail, and other needed data. Have methods that can be called to add, insert, and remove elements -- these methods should not expose the node class. Or maybe implement an iterator.
Once you have a fully functioning linked list class, creating a "to array" method should be straightforward.