The question does not accurately summarize the relevant sound changes. Latin short /u/ was not fronted to /y/. Only Latin long /uː/, as in dūrus /duːrus/, regularly developed to /y/ in French. (Of course, in learned words such as dubitatif, Latin U corresponds to /y/ regardless of its original length, but this does not represent a regular phonetic development.)
As a rule, Latin short /u/ (as in ŭrsus) merged with the reflex of Latin long /oː/ in French. The distinction between the reflexes of Latin /u/ and /uː/, with a merger of the reflexes of Latin /u/ and /oː/, is a common feature of the "Italo-Western" Romance languages. For comparison, Italian duro and orso also have different vowels.
Based on these reflexes, we can reconstruct a "Proto-Italo-Western-Romance" (PIWR) vowel system that distinguished vowel height but not length and had Latin /uː/ > PIWR *u and Latin /u/, /oː/ > PIWR *o.
PIWR *u became fronted to /y/ in the Old French period, and "u" /y/ is the usual reflex in Modern French.
PIWR *o developed differently; in Modern French the reflex is either "eu" (/ø/, /œ/) or “ou” (/u/). In Old French, it seems /u/ could be spelled as "o," "u" or "ou". In general, we get "eu" in stressed syllables that were open (during some particular stage of the language), and “ou” elsewhere, but there are other factors that make the distribution more complicated such as paradigmatic leveling and dialect mixing. We definitely would not expect ours to have /y/.
Wikipedia has an article "Phonological history of French" that may not be entirely accurate but that presents a general overview of the situation.
As for why/how the fronting occurred: I don't have any answer, sorry. All I can offer is some similar changes in other languages, such as Greek (where ancient /u/ became Classical Greek /y/) and modern English (where /u/ is often fronted more or less, depending in part on the phonetic environment).
A bit of Googling turned up the following paper: "The Feature [Advanced Tongue Root] and Vowel Fronting in Romance," by Andrea Calabrese.
Previous explanations of this change [that is: /u/ > [y]], based on substratum theory
(Ascoli 1881) and structural pressure due to independent sound
changes, besides being outdated, are quite unsatisfactory. There is no
generative study of this change, and it is usually considered to be an
'unnatural' sound change that defies explanation (cf. Dressler
I guessed that it was connected to the sound change /o/ > /u/, but the first sentence says that is not likely to be relevant. Calabrese goes on to propose an explanation based on the feature [advanced tongue root], which is illustrated by examples of a similar sound change in the southern Italian dialect of Altamura; I don't fully understand it so I won't copy it here, but you can look in the paper at section 4, page 84 to see what she says about Old French.