Let's go part-by-part.
For a NODE within a layer, if we have p inputs, we would multiply a 1xp coefficient matrix with a px1 input vector, correct?
In practice, for that LAYER, we would multiply a mxp coefficient matrix by a px1 input vector, where m is the number of nodes within that layer?
These two are correct. No issues here. The only differences may ...
From my personal experience, the units hyperparam in LSTM is not necessary to be the same as max sequence length. Add more units to have the loss curve dive faster.
And about the number of LSTM layers, trying out a single LSTM layer is a good start point, the model trains better with more LSTM layers.
For example, MAX_SEQ_LEN=10, in Keras:
Lstm1 = LSTM(units=...