Does the Earth ever cross the Moon's path with respect to the CMB? Title says it, really. As I understand, our total peculiar motion with respect to the CMB is 631 (+/-20) km/h, in the direction of 10.5h RA; -24 deg Dec (or rather away from 22.5h RA; +24 deg Dec, right? That's close to the direction of Lambda Pegasi).

So, if we draw a line from the Moon to Lambda Pegasi, does Earth ever cross it?

I think the answer is no, but don't have enough of a model to prove it to myself.

The inclination of the Moon's orbit is 5.14 degrees, and the Earth subtends about 1.2 degrees from the moon, but the Moon's path extends off at 24 degrees above the ecliptic. So the Earth won't cross it, right?

This is all assuming that the vector info above is the total, and already accounts for the motion of the sun around the milky way. If that's not the case, please let me know.
Not within plus/minus a few hundred years at least! The Moon's orbital plane around the Earth (viewed in an inertial frame) rocks back and forth a bit (Lunar Nodal Precession with a period of about 18.6 years), but that's not going to help here. 

You can play with the numbers in this program.









import numpy as np
import matplotlib.pyplot as plt
from skyfield.api import Loader

degs = 180./np.pi

load = Loader('~/Documents/yournamehere/SkyData')
data = load('de405.bsp')
ts   = load.timescale()

timez = []
dayz  = np.arange(1, 31, 0.1)
dayz  = np.arange(1, 366, 0.1)

#for year in range(1700, 2200):
for year in range(2017, 2028):
#for year in range(2000, 2030):

    #time    = ts.utc(year, 7,  dayz)  # July
    time    = ts.utc(year, 1, dayz)   # January
    timez.append(time)

earth = data['earth']
moon  = data['moon']

RAdegs, Decdegs = [], []

for time in timez:

    RA, Dec, dist = earth.at(time).observe(moon).radec()
    RAdeg, Decdeg = degs*RA.radians, degs*Dec.radians

    # lazy way to block the wrapparound
    dRAdeg = RAdeg[1:] - RAdeg[:-1]
    dropit = np.abs(dRAdeg) &gt; 100
    RAdeg[:-1][dropit]  = np.nan
    Decdeg[:-1][dropit] = np.nan

    RAdegs.append(RAdeg)
    Decdegs.append(Decdeg)

RAdegpts  = [157.5, 157.5+180]  # coordinates from the question
Decdegpts = [-24.0, +24.0] 

if 1 == 1:
    plt.figure()
    for RAdeg, Decdeg in zip(RAdegs, Decdegs): #[::5]:  # plot every 5th year
        plt.plot(RAdeg, Decdeg)
    plt.scatter(RAdegpts, Decdegpts)
    plt.title("2017 throuth 2027 continuously", fontsize=20)
    plt.show()