>>300
つまり previous-line-or-history-element に何かあるのかな
と思ったけど previous-line-or-history-element が絡んでいなくても
変な位置に移動する別の手順を発見(Emacs 26.1)

emacs -Q で起動
*scratch* バッファが表示される。バッファ内容は:
;; This buffer is for text that is not saved, and for Lisp evaluation.
;; To create a file, visit it with C-x C-f and enter text in its buffer.

M-x column-number-mode RET (※これは位置の説明を明確にする為で症状再現とは関係ない)
M-< (バッファ先頭へ移動)
M-f (最初の単語 "This" 直後の空白の上へ移動。行,桁表示は 1,7)
M-x n-l-l RET (二行目の b の上に移動)
C-p (一行目の b の上に移動)
M-x C-p (ミニバッファに "Beginning of buffer" と表示される)
M-p (ミニバッファの表示が M-x next-logical-line となる)
RET (二行目の最初の単語 "To" 末尾、"o" の上に移動する。行,桁表示は 2,4。
ここで期待した結果は 2,7、"create" の "r" の上)