Ketika perang meletus dengan Meksiko, Morgan ditunjuk sebagai Kolonel Infantri Relawan Ohio ke-2. Dia kemudian ditugaskan sebagai Kolonel Infantri AS ke-15 pada bulan Maret 1847, melayani di bawah Jenderal Winfield Scott. Untuk mengakhiri perang gerilya dan pembunuhan tentara Amerika, Kolonel Morgan menangkap sejumlah warga Meksiko terkemuka dan mengeluarkan proklamasi yang mengumumkan bahwa untuk setiap tentara Amerika yang dibunuh oleh gerilyawan, seorang warga negara akan dieksekusi. Pembunuhan berhenti dengan segera. Dia diberi gelar brigadir jenderal pada tahun 1848 untuk keberaniannya di pertempuran Contreras dan Churubusco
, di mana ia terluka parah. Kembali ke Ohio untuk pulih, ia menerima ucapan terima kasih resmi dari legislatif Ohio.