O mais importante é não esperar que Rust seja Python com uns parênteses só. É um nível completamente diferente de controle. O compilador reclama não é à toa, ele te protege de vazamentos de memória e race conditions que em Python ficam escondidas. Em primeiro lugar, faça o tutorial oficial "The Book" (Rust Programming Language) - foi escrito justamente para quem tá migrando de outras linguagens. Lá explicam bem ownership e borrowing não como matemática, mas como prática. Ao mesmo tempo, escreva programas pequenos, não corra para projetos ambiciosos.
Com lifetimes no começo vai ser bem doloroso mesmo. O conselho é simples: não tente adivinhar como escrevê-los. Escreva o código, o compilador reclama, você lê a mensagem de erro (em Rust são geralmente bem informativas), corrige. Alguns meses - e vai começar a parecer lógico. Rust Playground no navegador ajuda muito, ali você vê a resposta na hora, sem complicação de instalar nada.
Recursos: The Book (grátis no site), depois Rustlings - uns exercícios pequenos que te fazem escrever código de verdade. Se a linguagem não tá pegando - procura algum curso em vídeo no YouTube, tem gente que explica os conceitos de um jeito que faz mais sentido. O importante é não desistir no primeiro mês, quando parece que você não tá entendendo nada. Isso é normal.