My fault for not checking carefully. The Samsung 950 PRO on my motherboard (ASUS Z97I-PLUS) while faster than conventional SATA SSD, is far from running at its full capability. (The numbers should be doubled this)
The board indeed support PCIe M.2, but the gotcha is it only runs on 2 lanes, rather than the 4 lanes that NVMe can use. This using PCIe x2 on M.2 is apparently quite common, e.g. MSI Z97I GAMING ACK, ASRock Z97E-ITX/ac.
The only LGA 1150 ITX board I have found that support PCIe x4 on M.2 port is the ASUS MAXIMUS VII IMPACT. It costs a pretty penny, but I might have gone with it had I realize the difference before buying the Z97I-PLUS.
The situation is better with Skylake boards, which I am now kicking myself for not going for it. In the end, the only part I actually salvaged from the old build is a pair of 8GB DDR3 RAM (instead of CPU and RAM) so I could have gone Skylake without making much of a difference to the cost.