Because your passband is too narrow, leading to zeros and poles very close to the unit circle. Quantization error finally results in poles outside the unit circle and consequently an unstable filter.
First design a bandpass filter with $f_0 = 1/60$ Hz, $f_1 = 1$ Hz and $f_s = 10$ Hz.
from scipy.signal import butter
from scipy.signal import freqz
Following up the suggestion to use so-called shelving filters by Hilmar (thanks!), with the biquad_cookbook module that endolith linked (thanks!). The package (written in 2013) runs with (conda) python 3.8.10 out of the box.
import numpy as np
import biquad_cookbook # need the file in the working directory
precompensated_signals = ...
Is there an invertible low-pass filter
is there something particularly difficult about inverting a low-pass filter?
Yes. Digital low pass filters (in the most common sense) have a zero at Nyquist which means that the inverse has infinite gain at Nyquist and is unstable.
Seemingly having two identical coefficients in b as the first and only ...