I think an answer to a question close to yours can be found in [1] and in the survey in the first section of [2].
There some necessary and sufficient conditions are given for a simplicial complex to be a topological manifold. In particular you can look at Theorem 3.5 of [1] or Theorem 1.12 of [2]. (They are basically the if and only if version of Adam's answer for simplicial complexes)
Using the terminology of [2] we can state:
Definition: An $n$-dimensional homology manifold is a pure simplicial complex $X$ of dimension $n$ in which, for every face $\sigma$, the complex $\mbox{Link}(\sigma)$ has the same homology of a $(\mbox{dim} X − \mbox{dim}\sigma − 1)$ -sphere.
Theorem: An $n$-dimensional homology manifold $X$ is a topological $n$-manifold iff for every vertex $v$ of $X$ $\mbox{Link}(v)$ is simply connected.
[1] J.W.Cannon, The recognition problem: What is a topological manifold?,Bull. Amer. Math. Soc. 84 (1978), 832-866
[2] B. Benedetti, Smoothing discrete Morse theory, Ann. Sc. Norm. Super. Pisa Cl. Sci. (5), Vol. XVI (2016), 335-368. preprint here
EDIT: Let's try and turn this disaster into something with a moderate amount of workability by making some simplifying assumptions. I wouldn't recommend reading the previous version.
First, let's assume $X$ is a finite cell complex, coming from a filtration by subcomplexes $X^{(d)}$. (We'll allow ourselves the possibility of $X^{(d)}$ being formed from $X^{(d-1)}$ by attaching multiple cells of any necessary dimension.) The Thom spectrum functor of an infinite complex is (at the least, equivalent to) the colimit of the Thom spectra on its finite subcomplexes, and since our questions are about cellular filtrations we're not losing important details by restricting to finite objects.
Let's also assume for simplification that we have a topological group $G$ that acts by based maps on $S^n$, and a map $\alpha: X \to BG$ classifying a principal $G$-bundle $P \to X$. From this, we get a Thom space $X^\alpha = S^n \wedge_G P_+$. Let's assume for simplicity that we're talking about the associated virtual bundle of degree zero so that the Thom spectrum is the suspension spectrum $\Sigma^{-n} \Sigma^\infty X^\alpha$.
For each cell $D^k \to X$, choose a lift $D^k \to P$, which extends uniquely to a $G$-map $G \times D^k \to P$. These give $P$ a $G$-equivariant cell structure. If $P^{(d)}$ is the preimage of $X^{(d)}$, then $P^{(d)}/P^{(d-1)}$ is a wedge of copies of $G_+ \wedge S^{j_i}$. Every new cell of $P^{(d+1)}$ is attached via an equivariant boundary map $G \times S^{k-1} \to P^{(d)}$. On Thom spaces we get a filtration by $S^n \wedge_G P^{(d)}_+$, with the quotients in the filtration being wedges of $S^{n+k}$. In particular, the attaching maps between different layers are determined by $G$-equivariant maps $G_+ \wedge S^{k-1} \to \bigvee G_+ \wedge S^{j_i}$; taking the Thom space turns this into maps $S^{n+k-1} \to \bigvee S^{n+j_i}$.
Now take this whole picture and take suspension spectra.
We have a suspension spectrum $Y = \Sigma^\infty P_+$, which has an action of the group algebra $\mathbb{S}[G] = \Sigma^\infty G_+$. Taking suspension spectra preserves colimits, so that we can translate space-level identifications. We find that the suspension spectrum of $X$ is $\mathbb{S} \wedge_{\mathbb{S}[G]} Y$ where $G$ acts trivially on $\mathbb{S}$, while the Thom spectrum is $S^0 \wedge_{\mathbb{S}[G]} Y$. Here we view $S^0 = \Sigma^{-n} \Sigma^\infty S^n$ as being equivalent to $\mathbb{S}$, but inheriting its appropriate $G$-action.
We also have a filtration of $Y$ by submodules $Y^d = \Sigma^\infty_+ P^{(d)}_+$. The layers $Y^d / Y^{d-1}$ are wedges $\bigvee \mathbb{S}[G] \wedge S^{j_i}$. Let's use this filtration to build the "resolution"
$$
Y^0 \leftarrow \Sigma^{-1} Y^1/Y^0 \leftarrow \Sigma^{-2} Y^2/Y^0 \leftarrow \cdots.
$$
On homotopy groups, this gives a chain complex $C$ with $C_d = \pi_* (\Sigma^{-d} Y^d / Y^{d-1})$ of (graded) free modules over $\pi_* \mathbb{S}[G]$. It has the following properties.
It gives a spectral sequence with $E_2$-term $H_{**}(C)$ converging to $\pi_* Y$.
Smashing over $\mathbb{S}[G]$ with $\mathbb{S}$ tensors this chain complex over $\pi_* \mathbb{S}[G]$ with $\pi_* \mathbb{S}$. This chain complex comes from the cellular filtration of $\Sigma^\infty X_+$, and its homology is the $E_2$-term of the cellular spectral sequence for the homotopy of $\Sigma^\infty X_+$. (Standard techniques allow us to say there's a spectral sequence starting with $Tor^{\pi_* \mathbb{S}[G]}_{***}(\pi_* \mathbb{S}, H_{**}(C))$ and converging to the $E_2$-term.)
Smashing over $\mathbb{S}[G]$ with $S^0$ tensors this chain complex over $\pi_* \mathbb{S}[G]$ with $\pi_* S^0$ (in this case, $G$ acts nontrivially!). This chain complex comes from the cellular filtration of the Thom spectrum, and its homology is the $E_2$-term of the cellular spectral sequence for the homotopy of $\Sigma^\infty X_+$. (Again, there's a spectral sequence starting with $Tor^{\pi_* \mathbb{S}[G]}_{***}(\pi_* S^0, H_{**}(C))$ and converging to the $E_2$-term.)
The upshot of this is that, in terms of attaching maps, both the suspension spectrum of $X$ and the Thom spectrum of this degree-zero virtual bundle have cellular filtrations with the same cells. The relation between the adjacent attaching maps is this: they have common lifts from $\pi_* \mathbb{S}$ to $\pi_* \mathbb{S}[G]$, but one specialization has $G$ act trivially and one has $G$ act via its action on spheres.
Examples help.
If $G = O(1)$, then $\pi_* \mathbb{S}[G]$ is literally the group algebra over $\pi_* \mathbb{S}$ on $\mathbb{Z}/2$. The principal bundle over your space is a chain complex of free modules over this group algebra (and if $X = \mathbb{RP}^\infty$, it is a resolution of $\pi_* \mathbb{S}$). The two specializations make the generator ${-1}$ acts trivially and nontrivially respectively.
If $G = U(1)$, then $\pi_* \mathbb{S}[G]$ is even more interesting: it is a graded-commutative ring $\pi_* \mathbb{S}[d] / (d^2 = \eta d)$, where $|d| = 1$. The element $d$ comes from the canonical element in $\pi_1 U(1)$. The principal bundle again gives us a chain complex of free modules over this (and if $X = \mathbb{CP}^\infty$, it is the resolution of $\pi_* \mathbb{S}$ by free modules of rank $1$ given by alternately multiplying by $d$ and $d + \eta$). The two specializations make the generator act by $0$ and by $\eta$ respectively.
If $X = S^k$, then we can get into gory detail. We can use the cell decomposition with one zero-cell and one $k$-cell; the principal bundle is then formed by attaching $G \times D^k$ to $G$ along an equivariant map $G \times S^{k-1} \to G$ (so we need to be careful when $k=1$); without loss of generality we can make a choice sending the basepoint to the identity. This is literally an element in $\alpha \in \pi_{k-1}(G) = \pi_k BG$. Take suspension spectra and unwind: our chain complex is a two-term complex $\pi_* \mathbb{S}[G] \leftarrow \Sigma^{k-1} \pi_* \mathbb{S}[G]$. The map if $k \gt 1$ is given by (the image of) our element $\alpha$, while if $k = 1$ it is multiplication by the difference $1 - \alpha$. The two specializations make $\alpha$ go to zero (recovering the suspension of $S^k$) and to the appropriate image of $\pi_{k-1} G \to \pi_{k-1} Map(S^n,S^n) \to \pi_{k-1} \Omega^n S^n$ (recovering the cone on $\alpha$ or $1-\alpha$).
Secondary maps, like the $d_2$ in the spectral sequences I mentioned, are harder; suddenly you are trying to relate attaching maps for cells of two different objects. There may be some last bit of voodoo possible by taking these, which are basically Toda brackets, and trying to lift these to something equivariant. Seems like an interesting problem.
Best Answer
You can "visualize" the cell structure on $\mathbb{R}P^n$ rather explicitly as follows. The set of tuples $(x_0, ... x_n) \in \mathbb{R}^{n+1}$, not all equal to zero, under the equivalence relation where we identify two tuples that differ by multiplication by a nonzero real number, can be broken up into pieces depending on which of the $x_i$ are equal to zero.
If $x_0 \neq 0$, the corresponding points can be written $(1, x_1, ... x_n)$, and they form a subspace isomorphic to $\mathbb{R}^n$.
If $x_0 = 0$ and $x_1 \neq 0$, the corresponding points can be written $(0, 1, x_2, ... x_n)$, and they form a subspace isomorphic to $\mathbb{R}^{n-1}$.
And so forth. One way to say this is that the tuples where $x_0 \neq 0$ form an affine slice or affine cover of $\mathbb{R}P^n$ and the tuples where $x_0 = 0$ constitute the "points at infinity," which themselves form a copy of $\mathbb{R}P^{n-1}$.