The issue is it is not definite if Daśaratha really did kill the boy unintentionally. Daśaratha definitely killed someone and specifically a Rishi, because the Ramayana tells us that outside Daśaratha's speech.
Now while the translation here suggests Daśaratha is righteous, that actually doesn't mean much in Daśaratha. This is because Manu, who Daśaratha is an incarnation of, being a Prajāpati, is technically responsible for deciding what is righteous, so he could always just make an exception for himself. That's kind of inevitable with divine command morality, there will always be someone with this ability.
- dharmaatmaa = The high-souled; raaghavaH = Dasaratha; vilapanneva = while lamenting; apratiruupam = about the unworthy; vadham = killing; tasya maharshheH = of that sage; punaH = again; abraviit = spoke; kausalyaam = to Kausalya (as follows):
The high souled Dasaratha, while lamenting about the unworthy killing of that sage, spoke further to Kausalya as follows:
Rudra said:
1-3a. Formerly Svāyambhuva Manu muttered the great formula of twelve syllables at Naimiṣa on the pure, auspicious bank of Gomatī. For a thousand years he worshipped Lakṣmī’s lord. Lord Viṣṇu said to him: “Choose a boon from me.” Then Manu Svāyambhuva joyfully said to Viṣṇu:
...
Rudra said:
8-14. Having thus given him a boon, Viṣṇu vanished there only. From Manu Svāyambhuva he had the first birth. He was born as king Daśaratha in the Raghu-family formerly. The second birth was that of lord Vasudeva in the family of the Vṛṣṇis. He will be born as a brāhmaṇa in the town of Śambhala in the last two quarters of the Kali-age of the measure of a thousand divine years. Kausalyā was born as the wife of king Daśaratha. Devakī was known (to be born) to serve the Yadu-family. Devaprabhā was born as the wife of a brāhmaṇa Harivrata. Thus they obtained the motherhood of Viṣṇu in three existences. O you of a good vow, I shall first tell you the account of Rāma, by just remembering whom even sinners get liberation. Hiraṇyaka and Hiraṇyākṣa, taking up second birth, will be born as the very strong Kumbhakarṇa and Rāvaṇa.
वैश्यं प्रति तथैवैते निवर्तेरन्निति स्थितिः ।
न तौ प्रति हि तान् धर्मान् मनुराह प्रजापतिः ॥ ७८ ॥
vaiśyaṃ prati tathaivaite nivarteranniti sthitiḥ |
na tau prati hi tān dharmān manurāha prajāpatiḥ || 78 ||
For the Vaiśya also these three should cease,—such is the law; since Prajāpati Manu has not prescribed these duties for those two (castes).—(78)
Anyway, the main reason I don't believe Daśaratha's story is that it does not make any sense, and spending time outside Earth (unlike the rest of his family, except Kaikeya, who seems to stay silent out of a mixture of confusion and fear) he really should know better.
The first issue is as shown before, the person who he kills is a Maharishi. The Vishnu Purana, which at its core is two Rishis speaking to each other gives Bharata as 9000 Yojanas. A yojana is 8000 dhanus. A dhanu refers to bows, specifically (from common use in India at the time) the long bows as tall as the wielder. The average human height changes over time, so let's just go with 163 cm. That would give a modern human yojana of 13.04 km. Thus the Bharata using modern human yojanas would be 117,360 km. For reference, the Earth has a diameter of 12,742 km. Now whether Bharata refers to India, Earth, or a cosmic region, it means Rishis are either way too small or way too big to be mistaken for an elephant. If the Rishi shapeshifted he would fit, but he has literally no incentive to do so. Also if Rishis were humanoid, the direction to hit the weak points of an elephant do not match with those of a human in arrow direction.
THE country that lies north of the ocean, and south of the snowy mountains, is called Bhārata, for there dwelt the descendants of Bharata. It is nine thousand leagues in extent1, and is the land of works, in consequence of which men go to heaven, or obtain emancipation.
- tataH = then; mayaa = by me; shrutaH = was heard; shabdaH = the sound; kumbhasya = of a pitcher; puuryataH = being filled; jale = with water; matvaa = thinking; ayam = it; dvipaH iti = as an elephant; ayam = it; abhihataH = was killed; mayaa = by me; baaNena = with an arrow."
"Then by me was heard the sound of a pitcher being filled with water. Guessing it as an elephant, I killed it with an arrow."
The other obvious issue is elephants drinking and filling a pitcher of water both sound nothing like each other and are completely different in loudness. The bubbles from containers really give them away.
To conclude Daśaratha is not morally at fault for killing the boy, as he cannot be morally at fault for practically anything being a Prajāpati. He is causatively at fault though. So depending on how you want to assign fault for the curse, he is at fault or not. Also, you could argue he was not ever cursed.
P.S. Daśaratha clearly wants people to eventually find out, otherwise, he would have used a more sensible animal to mistake the Rishi for or just not used one found on Earth.
P.P.S Daśaratha clearly misses his son, but even in that life alone, he has over 350 wives, so it is safe to assume he has more than we know.