Continuous-variable quantum information processing through quantum optics offers a promising platform for building the next generation of scalable fault-tolerant information processors. To achieve quantum computational advantages and fault tolerance, non-Gaussian resources are essential. In this work, we propose and analyze a method to generate a variety of non-Gaussian states using coherent photon subtraction from a two-mode squeezed state followed by photon-number-resolving measurements. The proposed method offers a promising way to generate rotation-symmetric states conventionally used for quantum error correction with binomial codes and truncated Schr{o}dinger cat codes. We consider the deleterious effects of experimental imperfections such as detection inefficiencies and losses in the state engineering protocol. Our method can be readily implemented with current quantum photonic technologies.