This problem needs path queries AND updates. LCA cannot handle updates. Euler Tour only works for subtrees.
Heavy-Light Decomposition splits the tree into chains. Each chain is stored in a segment tree. When you query a path from a to b, you decompose it into chain segments and query each segment tree.
Updates work the same way: find the chain containing the node, update its segment tree. Total: per operation.
Space complexity is for the data structures used.